| 
					
				 | 
			
			
				@@ -19,11 +19,21 @@ from time import time 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # engine dependent config 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 categories = ['general'] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 paging = True 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-number_of_results = 5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+number_of_results = 10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+language_support = True 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+safesearch = True 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# search-url, invalid HTTPS certificate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# search-url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 base_url = 'https://gigablast.com/' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-search_string = 'search?{query}&n={number_of_results}&s={offset}&format=xml&qh=0&rxiyd={rxiyd}&rand={rand}' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+search_string = 'search?{query}'\ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '&n={number_of_results}'\ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '&s={offset}'\ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '&format=xml'\ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '&qh=0'\ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '&rxiyd={rxiyd}'\ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '&rand={rand}'\ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '&qlang={lang}'\ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    '&ff={safesearch}' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # specific xpath variables 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 results_xpath = '//response//result' 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -36,12 +46,23 @@ content_xpath = './/sum' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 def request(query, params): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     offset = (params['pageno'] - 1) * number_of_results 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    search_path = search_string.format( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        query=urlencode({'q': query}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        offset=offset, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        number_of_results=number_of_results, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        rxiyd=randint(10000, 10000000), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        rand=int(time())) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if params['language'] == 'all': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        language = 'xx' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    else: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        language = params['language'][0:2] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if params['safesearch'] >= 1: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        safesearch = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    else: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        safesearch = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    search_path = search_string.format(query=urlencode({'q': query}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                       offset=offset, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                       number_of_results=number_of_results, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                       rxiyd=randint(10000, 10000000), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                       rand=int(time()), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                       lang=language, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                       safesearch=safesearch) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     params['url'] = base_url + search_path 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |