[upd] wikipedia engine: return an empty result on query with illegal characters

on some queries (like an IT error message), wikipedia returns an HTTP error 400.
this commit returns an empty result instead of showing an error to the user.
This commit is contained in:
Alexandre Flament 2021-02-11 12:29:21 +01:00
parent 436d366448
commit 7d6e69e2f9

View file

@ -56,6 +56,17 @@ def request(query, params):
def response(resp):
if resp.status_code == 404:
return []
if resp.status_code == 400:
try:
api_result = loads(resp.text)
except:
pass
else:
if api_result['type'] == 'https://mediawiki.org/wiki/HyperSwitch/errors/bad_request' \
and api_result['detail'] == 'title-invalid-characters':
return []
raise_for_httperror(resp)
results = []