summaryrefslogtreecommitdiff
path: root/searx
diff options
context:
space:
mode:
Diffstat (limited to 'searx')
-rw-r--r--searx/engines/wikidata.py2
-rw-r--r--searx/engines/wikipedia.py4
-rw-r--r--searx/search.py6
3 files changed, 8 insertions, 4 deletions
diff --git a/searx/engines/wikidata.py b/searx/engines/wikidata.py
index 539ce5ad4..60d0dc9a0 100644
--- a/searx/engines/wikidata.py
+++ b/searx/engines/wikidata.py
@@ -190,7 +190,7 @@ def get_results(attribute_result, attributes, language):
infobox_id_lang = None
infobox_urls = []
infobox_attributes = []
- infobox_content = attribute_result.get('itemDescription')
+ infobox_content = attribute_result.get('itemDescription', [])
img_src = None
img_src_priority = 100
diff --git a/searx/engines/wikipedia.py b/searx/engines/wikipedia.py
index 620ec3c14..9fce170eb 100644
--- a/searx/engines/wikipedia.py
+++ b/searx/engines/wikipedia.py
@@ -37,13 +37,15 @@ def request(query, params):
language=url_lang(params['language']))
params['headers']['User-Agent'] = searx_useragent()
+ params['raise_for_status'] = False
+ params['soft_max_redirects'] = 2
return params
# get response from search-request
def response(resp):
- if not resp.ok:
+ if resp.status_code == 404:
return []
results = []
diff --git a/searx/search.py b/searx/search.py
index 8898f1576..8c2ad8d72 100644
--- a/searx/search.py
+++ b/searx/search.py
@@ -143,7 +143,8 @@ def send_http_request(engine, request_params):
response = req(request_params['url'], **request_args)
# check HTTP status
- response.raise_for_status()
+ if request_params.get('raise_for_status'):
+ response.raise_for_status()
# check soft limit of the redirect count
if len(response.history) > soft_max_redirects:
@@ -340,7 +341,8 @@ def default_request_params():
'url': '',
'cookies': {},
'verify': True,
- 'auth': None
+ 'auth': None,
+ 'raise_for_status': True
}