Mercurial > hg > purlService
annotate restService/searcher.py @ 39:a33fa2377075
outfiles are now set as parameter
author | dwinter |
---|---|
date | Wed, 05 Mar 2014 10:11:50 +0100 |
parents | aced422ae66c |
children |
rev | line source |
---|---|
8 | 1 ''' |
2 Created on 02.11.2012 | |
3 | |
4 @author: dwinter | |
5 ''' | |
6 | |
7 import web | |
9 | 8 import managePurls.manageIndexMetaPURLs as manageIndexMetaPURLs |
8 | 9 |
10 class searcher: | |
11 | |
12 def __init__(self): | |
13 self.md=manageIndexMetaPURLs.IndexMetaPURLManager() | |
14 | |
15 def GET(self): | |
16 | |
17 input = web.input() | |
18 | |
19 if not hasattr(input, 'q'): | |
20
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
20 return "usage: ?q=QUERYSTRING " |
8 | 21 |
22 | |
20
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
23 if hasattr(input, 'q'): |
8 | 24 |
20
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
25 query = input.q |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
26 |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
27 purls=self.md.search(query) |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
28 |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
29 currentUrl = web.ctx.homepath |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
30 |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
31 if purls is None: |
33 | 32 #versuche noch mal mit "/index.meta" |
33 purls=self.md.search(query+"/index.meta") | |
34 if purls is None: | |
35 purls=[] | |
20
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
36 |
33 | 37 |
20
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
38 ret="""<div class="results"><div class="purls_found_count">%s</div>"""%len(purls) |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
39 |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
40 for purl in purls: |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
41 ret+="""<div class="purls"><a href="%s">%s</a></div>"""%(currentUrl+"/purl/"+purl['purl'],purl['purl']) |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
42 |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
43 |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
44 web.header('Content-Type', 'text/html') |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
45 return ret+"</div>" |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
46 |
cf4503528b5e
searchsolr neue function, zun?chst nur f?r text-url-path
dwinter
parents:
9
diff
changeset
|
47 |
33 | 48 def POST(self): |
49 data = web.data() | |
50 ret=[] | |
51 print data | |
52 for line in data.split("\n"): | |
53 purls=self.md.search(line) | |
54 | |
55 if purls is None: | |
56 #versuche noch mal mit "/index.meta" | |
57 purls=self.md.search(line+"/index.meta") | |
58 if purls is None: | |
59 purls=[] | |
60 | |
61 | |
62 for purl in purls: | |
63 ret.append("%s\t%s"%(line,purl['purl'])) | |
64 | |
65 | |
66 return "\n".join(ret) | |
8 | 67 |
68 if __name__ == '__main__': | |
69 pass |