projects
/
quanlib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Minor change to oclc lookup heuristic.
[quanlib.git]
/
classify
/
lookup.rb
diff --git
a/classify/lookup.rb
b/classify/lookup.rb
index 1fa5faaa9dc6f948610960644f194af496b4fc0c..889db51f48783dce8ca4ce469bb5f0bbee68d6b3 100644
(file)
--- a/
classify/lookup.rb
+++ b/
classify/lookup.rb
@@
-37,10
+37,10
@@
class Lookup
return /[[:upper:]]/.match(c)
end
return /[[:upper:]]/.match(c)
end
- def lookup(author_grouping,
titl
e)
+ def lookup(author_grouping,
pathnam
e)
params = [
['author', massage_author(author_grouping)],
params = [
['author', massage_author(author_grouping)],
- ['title', massage_title(
titl
e)]
+ ['title', massage_title(
pathnam
e)]
]
cmd = construct_url(params)
]
cmd = construct_url(params)
@@
-64,6
+64,9
@@
class Lookup
end
if "2" != response_code(doc)
end
if "2" != response_code(doc)
+ # Lookup failed. Let's try shortening the title, if it's in multiple parts
+
+ #TODO TODO
puts "Lookup failed"
return nil
end
puts "Lookup failed"
return nil
end
@@
-124,18
+127,12
@@
class Lookup
def massage_title(pathname)
basename = File.basename(pathname, '.*')
def massage_title(pathname)
basename = File.basename(pathname, '.*')
- result = ""
- basename.each_char do |c|
- if '_' == c
- result += ' '
- elsif '-' == c
- result += "'"
- else
- result += c
- end
- end
+ basename.gsub!('_', ' ')
+ basename.gsub!('--', ': ')
+ basename.gsub!('-s ', "'s ")
+ basename.gsub!('s- ', "s' ")
- return
result
+ return
basename
end
def response_code(doc)
end
def response_code(doc)