Browse Source

Merge pull request #1682 from return42/fix-duden

[fix] engine duden - don't raise exception on empty result list
Markus Heiser 2 years ago
parent
commit
0ceb2563d2
1 changed files with 7 additions and 0 deletions
  1. 7 0
      searx/engines/duden.py

+ 7 - 0
searx/engines/duden.py

@@ -7,6 +7,7 @@ import re
 from urllib.parse import quote, urljoin
 from urllib.parse import quote, urljoin
 from lxml import html
 from lxml import html
 from searx.utils import extract_text, eval_xpath, eval_xpath_list, eval_xpath_getindex
 from searx.utils import extract_text, eval_xpath, eval_xpath_list, eval_xpath_getindex
+from searx.network import raise_for_httperror
 
 
 # about
 # about
 about = {
 about = {
@@ -47,6 +48,7 @@ def request(query, params):
     # after the last page of results, spelling corrections are returned after a HTTP redirect
     # after the last page of results, spelling corrections are returned after a HTTP redirect
     # whatever the page number is
     # whatever the page number is
     params['soft_max_redirects'] = 1
     params['soft_max_redirects'] = 1
+    params['raise_for_httperror'] = False
     return params
     return params
 
 
 
 
@@ -56,6 +58,11 @@ def response(resp):
     '''
     '''
     results = []
     results = []
 
 
+    if resp.status_code == 404:
+        return results
+
+    raise_for_httperror(resp)
+
     dom = html.fromstring(resp.text)
     dom = html.fromstring(resp.text)
 
 
     number_of_results_element = eval_xpath_getindex(
     number_of_results_element = eval_xpath_getindex(