summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Nuthalapati <njoseph@thoughtworks.com>2017-12-19 13:04:18 +0530
committerJoseph Nuthalapati <njoseph@thoughtworks.com>2017-12-21 17:33:19 +0530
commitbdc803e185e1a7bb14892405a2c0c840ba6e0fe1 (patch)
tree31ad75ea97a190018b1b3e6c961ce87a5d71e6db
parent943404a1033d7683d3d9f3dbed92780fa7e1bca4 (diff)
downloadsearxng-bdc803e185e1a7bb14892405a2c0c840ba6e0fe1.tar.gz
searxng-bdc803e185e1a7bb14892405a2c0c840ba6e0fe1.zip
Make Python 3 able to read settings files with Unicode characters
SearX currently doesn't start up when run with Python 3 as it tries to parse the settings.yml file with ASCII codecs. There are similar problems with engines_languages.json and currencies.json Python 3 requires that files with Unicode characters be read with a 'b' flag. This also works with Python 2 and hence can be integrated into the main source code. Tested with the latest Python 3.6.4rc1 on Debian unstable. Signed-off-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
-rw-r--r--searx/__init__.py2
-rw-r--r--searx/engines/__init__.py2
-rw-r--r--searx/engines/currency_convert.py2
3 files changed, 3 insertions, 3 deletions
diff --git a/searx/__init__.py b/searx/__init__.py
index a57588cd3..84a377d7d 100644
--- a/searx/__init__.py
+++ b/searx/__init__.py
@@ -50,7 +50,7 @@ if not settings_path:
raise Exception('settings.yml not found')
# load settings
-with open(settings_path) as settings_yaml:
+with open(settings_path, 'rb') as settings_yaml:
settings = load(settings_yaml)
'''
diff --git a/searx/engines/__init__.py b/searx/engines/__init__.py
index 7a9cc56a2..bec8de3a8 100644
--- a/searx/engines/__init__.py
+++ b/searx/engines/__init__.py
@@ -36,7 +36,7 @@ engines = {}
categories = {'general': []}
-languages = loads(open(engine_dir + '/../data/engines_languages.json').read())
+languages = loads(open(engine_dir + '/../data/engines_languages.json', 'rb').read())
engine_shortcuts = {}
engine_default_args = {'paging': False,
diff --git a/searx/engines/currency_convert.py b/searx/engines/currency_convert.py
index 1bb4e60c9..34a9af678 100644
--- a/searx/engines/currency_convert.py
+++ b/searx/engines/currency_convert.py
@@ -94,7 +94,7 @@ def load():
global db
current_dir = os.path.dirname(os.path.realpath(__file__))
- json_data = open(current_dir + "/../data/currencies.json").read()
+ json_data = open(current_dir + "/../data/currencies.json", 'rb').read()
db = json.loads(json_data)