From 609eeaf151f9237e697225557ae1f9b60145edf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?No=C3=A9mi=20V=C3=A1nyi?= Date: Tue, 2 Aug 2022 19:19:12 +0200 Subject: [PATCH] [mod] do not consent to tracking when using google Cherry picked from searx/searx@5b50d7 [5b50d7] https://github.com/searx/searx/commit/5b50d7 Signed-off-by: Markus Heiser --- searx/engines/google.py | 3 ++- searx/engines/google_news.py | 3 ++- searx/engines/google_scholar.py | 3 ++- searx/engines/google_videos.py | 3 ++- searx/engines/youtube_noapi.py | 3 ++- 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/searx/engines/google.py b/searx/engines/google.py index 9cb936ccf..9ae0004bb 100644 --- a/searx/engines/google.py +++ b/searx/engines/google.py @@ -26,6 +26,7 @@ The google WEB engine itself has a special setup option: """ from urllib.parse import urlencode +from random import random from lxml import html from searx.utils import match_language, extract_text, eval_xpath, eval_xpath_list, eval_xpath_getindex from searx.exceptions import SearxEngineCaptchaException @@ -282,7 +283,7 @@ def request(query, params): query_url += '&' + urlencode({'safe': filter_mapping[params['safesearch']]}) params['url'] = query_url - params['cookies']['CONSENT'] = "YES+" + params['cookies']['CONSENT'] = "PENDING+" + str(random() * 100) params['headers'].update(lang_info['headers']) if use_mobile_ui: params['headers']['Accept'] = '*/*' diff --git a/searx/engines/google_news.py b/searx/engines/google_news.py index 8f5a4b104..729a4e1e1 100644 --- a/searx/engines/google_news.py +++ b/searx/engines/google_news.py @@ -17,6 +17,7 @@ import binascii import re from urllib.parse import urlencode from base64 import b64decode +from random import random from lxml import html from searx.utils import ( @@ -102,7 +103,7 @@ def request(query, params): ) # ceid includes a ':' character which must not be urlencoded params['url'] = query_url - params['cookies']['CONSENT'] = "YES+" + params['cookies']['CONSENT'] = "PENDING+" + str(random() * 100) params['headers'].update(lang_info['headers']) params['headers']['Accept'] = 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' diff --git a/searx/engines/google_scholar.py b/searx/engines/google_scholar.py index 41c62886b..5d4b421e0 100644 --- a/searx/engines/google_scholar.py +++ b/searx/engines/google_scholar.py @@ -13,6 +13,7 @@ Definitions`_. from urllib.parse import urlencode from datetime import datetime +from random import random from lxml import html from searx.utils import ( @@ -91,7 +92,7 @@ def request(query, params): query_url += time_range_url(params) params['url'] = query_url - params['cookies']['CONSENT'] = "YES+" + params['cookies']['CONSENT'] = "PENDING+" + str(random() * 100) params['headers'].update(lang_info['headers']) params['headers']['Accept'] = 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' diff --git a/searx/engines/google_videos.py b/searx/engines/google_videos.py index 26dbcdd3c..45f5adff6 100644 --- a/searx/engines/google_videos.py +++ b/searx/engines/google_videos.py @@ -18,6 +18,7 @@ import re from urllib.parse import urlencode +from random import random from lxml import html from searx.utils import ( @@ -127,7 +128,7 @@ def request(query, params): query_url += '&' + urlencode({'safe': filter_mapping[params['safesearch']]}) params['url'] = query_url - params['cookies']['CONSENT'] = "YES+" + params['cookies']['CONSENT'] = "PENDING+" + str(random() * 100) params['headers'].update(lang_info['headers']) params['headers']['Accept'] = 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' return params diff --git a/searx/engines/youtube_noapi.py b/searx/engines/youtube_noapi.py index 7992adf82..d098d18d0 100644 --- a/searx/engines/youtube_noapi.py +++ b/searx/engines/youtube_noapi.py @@ -6,6 +6,7 @@ from functools import reduce from json import loads, dumps from urllib.parse import quote_plus +from random import random # about about = { @@ -36,7 +37,7 @@ base_youtube_url = 'https://www.youtube.com/watch?v=' # do search-request def request(query, params): - params['cookies']['CONSENT'] = "YES+" + params['cookies']['CONSENT'] = "PENDING+" + str(random() * 100) if not params['engine_data'].get('next_page_token'): params['url'] = search_url.format(query=quote_plus(query), page=params['pageno']) if params['time_range'] in time_range_dict: