@@ -11,6 +11,7 @@
1111from urllib import urlencode
1212from urlparse import urlparse, parse_qsl
1313from lxml import html
14+from searx.poolrequests import get
1415from searx.engines.xpath import extract_text, extract_url
1516
1617# engine dependent config
@@ -39,6 +40,17 @@ images_xpath = './/div/a'
3940image_url_xpath = './@href'
4041image_img_src_xpath = './img/@src'
4142
43+pref_cookie = ''
44+
45+
46+# see https://support.google.com/websearch/answer/873?hl=en
47+def get_google_pref_cookie():
48+ global pref_cookie
49+ if pref_cookie == '':
50+ resp = get('https://www.google.com/ncr', allow_redirects=False)
51+ pref_cookie = resp.cookies["PREF"]
52+ return pref_cookie
53+
4254
4355# remove google-specific tracking-url
4456def parse_url(url_string):
@@ -64,6 +76,7 @@ def request(query, params):
6476 query=urlencode({'q': query}))
6577
6678 params['headers']['Accept-Language'] = language
79+ params['cookies']['PREF'] = get_google_pref_cookie()
6780
6881 return params
6982