diff options
author | Alexandre Flament <alex@al-f.net> | 2021-02-11 12:29:21 +0100 |
---|---|---|
committer | Alexandre Flament <alex@al-f.net> | 2021-02-11 12:29:21 +0100 |
commit | 7d6e69e2f9c1efd76616af0f58d0d7313a338c47 (patch) | |
tree | 335e9d8049daacf2c58e4de62bd100063084da5d | |
parent | 436d366448131088a9cddcedc9b789a44b38ee97 (diff) | |
download | searxng-7d6e69e2f9c1efd76616af0f58d0d7313a338c47.tar.gz searxng-7d6e69e2f9c1efd76616af0f58d0d7313a338c47.zip |
[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.
-rw-r--r-- | searx/engines/wikipedia.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/searx/engines/wikipedia.py b/searx/engines/wikipedia.py index c8e589e64..2adfefa69 100644 --- a/searx/engines/wikipedia.py +++ b/searx/engines/wikipedia.py @@ -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 = [] |