mirror of
				https://github.com/searxng/searxng
				synced 2024-01-01 19:24:07 +01:00 
			
		
		
		
	Add a plugin to remove trackers from results URLs
This commit is contained in:
		
							parent
							
								
									4e28f12bfc
								
							
						
					
					
						commit
						617495cca8
					
				
					 2 changed files with 43 additions and 1 deletions
				
			
		|  | @ -21,7 +21,8 @@ logger = logger.getChild('plugins') | |||
| 
 | ||||
| from searx.plugins import (https_rewrite, | ||||
|                            self_ip, | ||||
|                            search_on_category_select) | ||||
|                            search_on_category_select, | ||||
|                            tracker_url_remover) | ||||
| 
 | ||||
| required_attrs = (('name', str), | ||||
|                   ('description', str), | ||||
|  | @ -73,3 +74,4 @@ plugins = PluginStore() | |||
| plugins.register(https_rewrite) | ||||
| plugins.register(self_ip) | ||||
| plugins.register(search_on_category_select) | ||||
| plugins.register(tracker_url_remover) | ||||
|  |  | |||
							
								
								
									
										40
									
								
								searx/plugins/tracker_url_remover.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								searx/plugins/tracker_url_remover.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,40 @@ | |||
| ''' | ||||
| searx is free software: you can redistribute it and/or modify | ||||
| it under the terms of the GNU Affero General Public License as published by | ||||
| the Free Software Foundation, either version 3 of the License, or | ||||
| (at your option) any later version. | ||||
| 
 | ||||
| searx is distributed in the hope that it will be useful, | ||||
| but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| GNU Affero General Public License for more details. | ||||
| 
 | ||||
| You should have received a copy of the GNU Affero General Public License | ||||
| along with searx. If not, see < http://www.gnu.org/licenses/ >. | ||||
| 
 | ||||
| (C) 2015 by Adam Tauber, <asciimoo@gmail.com> | ||||
| ''' | ||||
| 
 | ||||
| from flask.ext.babel import gettext | ||||
| import re | ||||
| 
 | ||||
| re1 = re.compile(r'utm_[^&]+&?') | ||||
| re2 = re.compile(r'(wkey|wemail)[^&]+&?') | ||||
| re3 = re.compile(r'&$') | ||||
| re4 = re.compile(r'^\?$') | ||||
| 
 | ||||
| name = gettext('Tracker URL remover') | ||||
| description = gettext('Remove trackers arguments from the returned URL') | ||||
| default_on = True | ||||
| 
 | ||||
| 
 | ||||
| def on_result(request, ctx): | ||||
|     url = ctx['result']['url'] | ||||
| 
 | ||||
|     url = re1.sub('', url) | ||||
|     url = re2.sub('', url) | ||||
|     url = re3.sub('', url) | ||||
|     url = re4.sub('', url) | ||||
| 
 | ||||
|     ctx['result']['url'] = url | ||||
|     return True | ||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Cqoicebordel
						Cqoicebordel