on master help sign in
[enh] engine selection support
commit9e1ded688fc1c91c48ae13c071c1971bf006fca6 authorasciimoo <asciimoo@gmail.com> dateTue 15 Oct 2013, 22:18 (13 years ago) parente4b768b
2 files changed+10−2
searx/engines/__init__.py+3−1 searx/webapp.py+7−1
searx/engines/__init__.py+3−1
@@ -28,12 +28,14 @@ def make_callback(engine_name, results, callback):
2828 results.append(result)
2929 return process_callback
3030
31−def search(query, request):
31+def search(query, request, selected_engines):
3232 global engines
3333 requests = []
3434 results = []
3535 user_agent = request.headers.get('User-Agent', '')
3636 for ename, engine in engines.items():
37+ if ename not in selected_engines:
38+ continue
3739 headers = default_request_params()
3840 headers['User-Agent'] = user_agent
3941 request_params = engine.request(query, headers)
searx/webapp.py+7−1
@@ -47,8 +47,14 @@ def index():
4747 if not request.form.get('q'):
4848 flash('Wrong post data')
4949 return render('index.html')
50+ selected_engines = []
51+ for pd_name,pd in request.form.items():
52+ print pd
53+ if pd_name.startswith('engine_'):
54+ selected_engines.append(pd_name[7:])
55+ print selected_engines
5056 query = request.form['q']
51− results = search(query, request)
57+ results = search(query, request, selected_engines)
5258 return render('results.html', results=results, q=query)
5359 return render('index.html')
5460