Create query_strings.py
This commit is contained in:
		
							parent
							
								
									a983db0229
								
							
						
					
					
						commit
						7fd5e74ea9
					
				
							
								
								
									
										23
									
								
								searx/plugins/query_strings.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								searx/plugins/query_strings.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,23 @@ | |||||||
|  | import shlex, string | ||||||
|  | 
 | ||||||
|  | name = "query strings" | ||||||
|  | description = 'adds site:, - and "" to searx' | ||||||
|  | default_on = True | ||||||
|  | 
 | ||||||
|  | def on_result(request, search, result): | ||||||
|  |     q = search.search_query.query | ||||||
|  |     qs = shlex.split(q) | ||||||
|  |     spitems = [x.lower() for x in qs if ' ' in x] | ||||||
|  |     mitems = [x.lower() for x in qs if x.startswith('-')] | ||||||
|  |     siteitems = [x.lower() for x in qs if x.startswith('site:')] | ||||||
|  |     msiteitems = [x.lower() for x in qs if x.startswith('-site:')] | ||||||
|  |     url, title, content = result["url"].lower(), result["title"].lower(), (result.get("content").lower() if result.get("content") else '') | ||||||
|  |     if all(x not in title or content for x in spitems): | ||||||
|  |         return False | ||||||
|  |     if all(x in title or content for x in mitems): | ||||||
|  |         return False | ||||||
|  |     if all(x not in url for x in siteitems): | ||||||
|  |         return False | ||||||
|  |     if all(x in url for x in msiteitems): | ||||||
|  |         return False | ||||||
|  |     return True | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user