diff options
| author | asciimoo <asciimoo@gmail.com> | 2013-10-15 18:19:06 +0200 |
|---|---|---|
| committer | asciimoo <asciimoo@gmail.com> | 2013-10-15 18:19:06 +0200 |
| commit | d5ec0f43e465e1bd016f1c841122fc3c774fc718 (patch) | |
| tree | 33a0f3f8fc688ef544dc2bc8d95e1443409503c4 /searx/webapp.py | |
| parent | 2440e74b1eb75832e3a187e4130b4df212a4dc06 (diff) | |
[mod] search refactor
Diffstat (limited to 'searx/webapp.py')
| -rw-r--r-- | searx/webapp.py | 35 |
1 files changed, 2 insertions, 33 deletions
diff --git a/searx/webapp.py b/searx/webapp.py index cfb30ba67..2dd9e28d7 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -25,8 +25,7 @@ if __name__ == "__main__": from flask import Flask, request, flash, render_template import ConfigParser from os import getenv -from searx.engines import engines -import grequests +from searx.engines import search cfg = ConfigParser.SafeConfigParser() cfg.read('/etc/searx.conf') @@ -38,14 +37,6 @@ cfg.read('searx.conf') app = Flask(__name__) app.secret_key = cfg.get('app', 'secret_key') -def default_request_params(): - return {'method': 'GET', 'headers': {}, 'data': {}, 'url': ''} - -def make_callback(results, callback): - def process_callback(response, **kwargs): - results.extend(callback(response)) - return process_callback - @app.route('/', methods=['GET', 'POST']) def index(): if request.method=='POST': @@ -53,30 +44,8 @@ def index(): flash('Wrong post data') return render_template('index.html') query = request.form['q'] - requests = [] - results = [] - user_agent = request.headers.get('User-Agent', '') - for engine in engines: - headers = default_request_params() - headers['User-Agent'] = user_agent - request_params = engine.request(query, headers) - callback = make_callback(results, engine.response) - if request_params['method'] == 'GET': - req = grequests.get(request_params['url'] - ,headers=headers - ,hooks=dict(response=callback) - ) - else: - req = grequests.post(request_params['url'] - ,data=request_params['data'] - ,headers=headers - ,hooks=dict(response=callback) - ) - requests.append(req) - grequests.map(requests) + results = search(query, request) return render_template('results.html', results=results, q=query) - - return render_template('index.html') if __name__ == "__main__": |