Commit d9c0428f authored by Jeremy Hylton's avatar Jeremy Hylton

Produce HTML output instead of text output

parent 8f30adc2
...@@ -14,8 +14,19 @@ QUERIES = ["nested recursive functions", ...@@ -14,8 +14,19 @@ QUERIES = ["nested recursive functions",
"articulate information", "articulate information",
"import default files", "import default files",
"gopher ftp http", "gopher ftp http",
"documentation",
] ]
def path2url(p):
# convert the paths to a python.org URL
# hack: only works for the way Jeremy indexed his copy of python.org
marker = "www.python.org/."
i = p.find(marker)
if i == -1:
return p
i += len(marker)
return "http://www.python.org" + p[i:]
def main(rt): def main(rt):
index = rt["index"] index = rt["index"]
files = rt["files"] files = rt["files"]
...@@ -28,21 +39,29 @@ def main(rt): ...@@ -28,21 +39,29 @@ def main(rt):
t0 = clock() t0 = clock()
results, num = index.query(query) results, num = index.query(query)
t1 = clock() t1 = clock()
print num, query, t1 - t0 print "<p>Query: \"%s\"" % query
print "<br>Num results: %d" % num
print "<br>time.clock(): %s" % (t1 - t0)
key = query key = query
if i == 0: if i == 0:
print "<ol>"
for docid, score in results: for docid, score in results:
print score, files[docid] url = path2url(files[docid])
fmt = '<li><a href="%s">%s</A> score = %s'
print fmt % (url, url, score)
print "</ol>"
continue continue
l = times.setdefault(key, []) l = times.setdefault(key, [])
l.append(t1 - t0) l.append(t1 - t0)
l = times.keys() l = times.keys()
l.sort() l.sort()
print print "<hr>"
for k in l: for k in l:
v = times[k] v = times[k]
print min(v), k, " ".join(map(str, v)) print "<p>Query: \"%s\"" % k
print "<br>Min time: %s" % min(v)
print "<br>All times: %s" % " ".join(map(str, v))
if __name__ == "__main__": if __name__ == "__main__":
import sys import sys
...@@ -65,7 +84,7 @@ if __name__ == "__main__": ...@@ -65,7 +84,7 @@ if __name__ == "__main__":
FSPATH = v FSPATH = v
fs = FileStorage(FSPATH, read_only=1) fs = FileStorage(FSPATH, read_only=1)
db = ZODB.DB(fs) db = ZODB.DB(fs, cache_size=10000)
cn = db.open() cn = db.open()
rt = cn.root() rt = cn.root()
main(rt) main(rt)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment