|  | @@ -25,8 +25,7 @@ if __name__ == "__main__":
 | 
	
		
			
			| 25 | 25 |  from flask import Flask, request, flash, render_template
 | 
	
		
			
			| 26 | 26 |  import ConfigParser
 | 
	
		
			
			| 27 | 27 |  from os import getenv
 | 
	
		
			
			| 28 |  | -from searx.engines import engines
 | 
	
		
			
			| 29 |  | -import grequests
 | 
	
		
			
			|  | 28 | +from searx.engines import search
 | 
	
		
			
			| 30 | 29 |  
 | 
	
		
			
			| 31 | 30 |  cfg = ConfigParser.SafeConfigParser()
 | 
	
		
			
			| 32 | 31 |  cfg.read('/etc/searx.conf')
 | 
	
	
		
			
			|  | @@ -38,14 +37,6 @@ cfg.read('searx.conf')
 | 
	
		
			
			| 38 | 37 |  app = Flask(__name__)
 | 
	
		
			
			| 39 | 38 |  app.secret_key = cfg.get('app', 'secret_key')
 | 
	
		
			
			| 40 | 39 |  
 | 
	
		
			
			| 41 |  | -def default_request_params():
 | 
	
		
			
			| 42 |  | -    return {'method': 'GET', 'headers': {}, 'data': {}, 'url': ''}
 | 
	
		
			
			| 43 |  | -
 | 
	
		
			
			| 44 |  | -def make_callback(results, callback):
 | 
	
		
			
			| 45 |  | -    def process_callback(response, **kwargs):
 | 
	
		
			
			| 46 |  | -        results.extend(callback(response))
 | 
	
		
			
			| 47 |  | -    return process_callback
 | 
	
		
			
			| 48 |  | -
 | 
	
		
			
			| 49 | 40 |  @app.route('/', methods=['GET', 'POST'])
 | 
	
		
			
			| 50 | 41 |  def index():
 | 
	
		
			
			| 51 | 42 |      if request.method=='POST':
 | 
	
	
		
			
			|  | @@ -53,30 +44,8 @@ def index():
 | 
	
		
			
			| 53 | 44 |              flash('Wrong post data')
 | 
	
		
			
			| 54 | 45 |              return render_template('index.html')
 | 
	
		
			
			| 55 | 46 |          query = request.form['q']
 | 
	
		
			
			| 56 |  | -        requests = []
 | 
	
		
			
			| 57 |  | -        results = []
 | 
	
		
			
			| 58 |  | -        user_agent = request.headers.get('User-Agent', '')
 | 
	
		
			
			| 59 |  | -        for engine in engines:
 | 
	
		
			
			| 60 |  | -            headers = default_request_params()
 | 
	
		
			
			| 61 |  | -            headers['User-Agent'] = user_agent
 | 
	
		
			
			| 62 |  | -            request_params = engine.request(query, headers)
 | 
	
		
			
			| 63 |  | -            callback = make_callback(results, engine.response)
 | 
	
		
			
			| 64 |  | -            if request_params['method'] == 'GET':
 | 
	
		
			
			| 65 |  | -                req = grequests.get(request_params['url']
 | 
	
		
			
			| 66 |  | -                                   ,headers=headers
 | 
	
		
			
			| 67 |  | -                                   ,hooks=dict(response=callback)
 | 
	
		
			
			| 68 |  | -                                   )
 | 
	
		
			
			| 69 |  | -            else:
 | 
	
		
			
			| 70 |  | -                req = grequests.post(request_params['url']
 | 
	
		
			
			| 71 |  | -                                    ,data=request_params['data']
 | 
	
		
			
			| 72 |  | -                                    ,headers=headers
 | 
	
		
			
			| 73 |  | -                                    ,hooks=dict(response=callback)
 | 
	
		
			
			| 74 |  | -                                    )
 | 
	
		
			
			| 75 |  | -            requests.append(req)
 | 
	
		
			
			| 76 |  | -        grequests.map(requests)
 | 
	
		
			
			|  | 47 | +        results = search(query, request)
 | 
	
		
			
			| 77 | 48 |          return render_template('results.html', results=results, q=query)
 | 
	
		
			
			| 78 |  | -
 | 
	
		
			
			| 79 |  | -
 | 
	
		
			
			| 80 | 49 |      return render_template('index.html')
 | 
	
		
			
			| 81 | 50 |  
 | 
	
		
			
			| 82 | 51 |  if __name__ == "__main__":
 |