| 
				
			 | 
			
			
				@@ -0,0 +1,23 @@ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1
			 | 
			
			
				+from json import loads 
			 | 
		
	
		
			
			| 
				
			 | 
			
				2
			 | 
			
			
				+from urllib import urlencode, quote 
			 | 
		
	
		
			
			| 
				
			 | 
			
				3
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				4
			 | 
			
			
				+url = 'https://en.wikipedia.org/' 
			 | 
		
	
		
			
			| 
				
			 | 
			
				5
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				6
			 | 
			
			
				+number_of_results = 10 
			 | 
		
	
		
			
			| 
				
			 | 
			
				7
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8
			 | 
			
			
				+def request(query, params): 
			 | 
		
	
		
			
			| 
				
			 | 
			
				9
			 | 
			
			
				+    search_url = url + 'w/api.php?action=query&list=search&{query}&srprop=timestamp&format=json' 
			 | 
		
	
		
			
			| 
				
			 | 
			
				10
			 | 
			
			
				+    params['url'] = search_url.format(query=urlencode({'srsearch': query})) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				11
			 | 
			
			
				+    return params 
			 | 
		
	
		
			
			| 
				
			 | 
			
				12
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				13
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				14
			 | 
			
			
				+def response(resp): 
			 | 
		
	
		
			
			| 
				
			 | 
			
				15
			 | 
			
			
				+    search_results = loads(resp.text) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				16
			 | 
			
			
				+    results = [] 
			 | 
		
	
		
			
			| 
				
			 | 
			
				17
			 | 
			
			
				+    res = search_results.get('query', {}).get('search', []) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				18
			 | 
			
			
				+    if not len(res): 
			 | 
		
	
		
			
			| 
				
			 | 
			
				19
			 | 
			
			
				+        return results 
			 | 
		
	
		
			
			| 
				
			 | 
			
				20
			 | 
			
			
				+    for result in res[:int(number_of_results)]: 
			 | 
		
	
		
			
			| 
				
			 | 
			
				21
			 | 
			
			
				+        results.append({'url': url + 'wiki/' + quote(result['title'].replace(' ', '_').encode('utf-8')), 'title': result['title']}) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				22
			 | 
			
			
				+    return results 
			 | 
		
	
		
			
			| 
				
			 | 
			
				23
			 | 
			
			
				+ 
			 |