@@ -2,7 +2,7 @@
22
33# set path
44from sys import path
5−from os.path import realpath, dirname
5+from os.path import realpath, dirname, join
66path.append(realpath(dirname(realpath(__file__)) + '/../'))
77
88#
@@ -12,16 +12,17 @@ import re
1212from distutils.version import LooseVersion, StrictVersion
1313from lxml import html
1414from searx.url_utils import urlparse, urljoin
15+from searx import searx_dir
1516
1617URL = 'https://ftp.mozilla.org/pub/firefox/releases/'
1718RELEASE_PATH = '/pub/firefox/releases/'
1819
19−NORMAL_REGEX = re.compile('^[0-9]+\.[0-9](\.[0-9])?(esr)?$')
20+NORMAL_REGEX = re.compile('^[0-9]+\.[0-9](\.[0-9])?$')
2021# BETA_REGEX = re.compile('.*[0-9]b([0-9\-a-z]+)$')
2122# ESR_REGEX = re.compile('^[0-9]+\.[0-9](\.[0-9])?esr$')
2223
2324#
24−useragent = {
25+useragents = {
2526 "versions": (),
2627 "os": ('Windows NT 10; WOW64',
2728 'X11; Linux x86_64'),
@@ -57,13 +58,16 @@ def fetch_firefox_last_versions():
5758 major_list = (major_last, major_last - 1)
5859 for version in versions:
5960 major_current = version.version[0]
60− if major_current in major_list and 'esr' not in version.version:
61+ if major_current in major_list:
6162 result.append(version.vstring)
6263
6364 return result
6465
6566
66−useragent["versions"] = fetch_firefox_last_versions()
67−f = open("../searx/data/useragents.json", "wb")
68−json.dump(useragent, f, sort_keys=True, indent=4, ensure_ascii=False, encoding="utf-8")
69−f.close()
67+def get_useragents_filename():
68+ return join(join(searx_dir, "data"), "useragents.json")
69+
70+
71+useragents["versions"] = fetch_firefox_last_versions()
72+with open(get_useragents_filename(), "w") as f:
73+ json.dump(useragents, f, indent=4, ensure_ascii=False)