[fix] external_bang - UnicodeDecodeError: 'ascii' codec can't decode (#2043)
Python's default encoding depends on the platform, set (python) default encoding
UTF-8 in uwsgi ini files:
LANG=C.UTF-8
LANGUAGE=C.UTF-8
LC_ALL=C.UTF-8
Error pattern:
Traceback (most recent call last):
File "/usr/local/searx/searx-src/searx/webapp.py", line 74, in <module>
from searx.search import SearchWithPlugins, get_search_query_from_webapp
File "/usr/local/searx/searx-src/searx/search.py", line 32, in <module>
from searx.external_bang import get_bang_url
File "/usr/local/searx/searx-src/searx/external_bang.py", line 13, in <module>
for bang in json.load(json_file)['bang']:
File "/usr/lib/python3.8/json/__init__.py", line 293, in load
return loads(fp.read(),
File "/usr/lib/python3.8/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 31341: ordinal not in range(128)
close: https://github.com/asciimoo/searx/issues/2041
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
commitf9faafa89698f0f32f2a6dc34473c6e33f82092d
authorMarkus Heiser <markus.heiser@darmarIT.de>
dateSat 11 Jul 2020, 10:17 (6 years ago)
parent7b19e6c
utils/templates/etc/uwsgi/apps-archlinux/searx.ini+5
@@ -9,6 +9,11 @@
99uid = ${SERVICE_USER}
1010gid = ${SERVICE_GROUP}
1111
12+# set (python) default encoding UTF-8
13+env = LANG=C.UTF-8
14+env = LANGUAGE=C.UTF-8
15+env = LC_ALL=C.UTF-8
16+
1217# chdir to specified directory before apps loading
1318chdir = ${SEARX_SRC}/searx
1419
utils/templates/etc/uwsgi/apps-archlinux/searx.ini:socket+5
@@ -9,6 +9,11 @@
99uid = ${SERVICE_USER}
1010gid = ${SERVICE_GROUP}
1111
12+# set (python) default encoding UTF-8
13+env = LANG=C.UTF-8
14+env = LANGUAGE=C.UTF-8
15+env = LC_ALL=C.UTF-8
16+
1217# chdir to specified directory before apps loading
1318chdir = ${SEARX_SRC}/searx
1419
utils/templates/etc/uwsgi/apps-available/searx.ini+5
@@ -9,6 +9,11 @@
99uid = ${SERVICE_USER}
1010gid = ${SERVICE_GROUP}
1111
12+# set (python) default encoding UTF-8
13+env = LANG=C.UTF-8
14+env = LANGUAGE=C.UTF-8
15+env = LC_ALL=C.UTF-8
16+
1217# chdir to specified directory before apps loading
1318chdir = ${SEARX_SRC}/searx
1419
utils/templates/etc/uwsgi/apps-available/searx.ini:socket+5
@@ -9,6 +9,11 @@
99uid = ${SERVICE_USER}
1010gid = ${SERVICE_GROUP}
1111
12+# set (python) default encoding UTF-8
13+env = LANG=C.UTF-8
14+env = LANGUAGE=C.UTF-8
15+env = LC_ALL=C.UTF-8
16+
1217# chdir to specified directory before apps loading
1318chdir = ${SEARX_SRC}/searx
1419