@@ -10,8 +10,10 @@ from codecs import getincrementalencoder
10from imp import load_source
10from imp import load_source
11from numbers import Number
11from numbers import Number
12from os.path import splitext, join
12from os.path import splitext, join
13from random import choice
14from random import choice
16from searx import settings
18from searx import settings
17from searx.version import VERSION_STRING
19from searx.version import VERSION_STRING
@@ -39,29 +41,11 @@ else:
40logger = logger.getChild('utils')
42logger = logger.getChild('utils')
42−ua_versions = ('52.8.1',
52−ua_os = ('Windows NT 6.3; WOW64',
56−ua = "Mozilla/5.0 ({os}; rv:{version}) Gecko/20100101 Firefox/{version}"
58blocked_tags = ('script',
44blocked_tags = ('script',
61−
47+useragents = json.loads(open(os.path.dirname(os.path.realpath(__file__))
62−def gen_useragent(os=None):
48+ + "/data/useragents.json", 'r', encoding='utf-8').read())
64− return ua.format(os=os or choice(ua_os), version=choice(ua_versions))
67def searx_useragent():
51def searx_useragent():
@@ -70,6 +54,10 @@ def searx_useragent():
70 suffix=settings['outgoing'].get('useragent_suffix', ''))
54 suffix=settings['outgoing'].get('useragent_suffix', ''))
57+def gen_useragent(os=None):
58+ return str(useragents['ua'].format(os=os or choice(useragents['os']), version=choice(useragents['versions'])))
73def highlight_content(content, query):
61def highlight_content(content, query):
75 if not content:
63 if not content: