summaryrefslogtreecommitdiff
path: root/searx/engines/qwant.py
diff options
context:
space:
mode:
Diffstat (limited to 'searx/engines/qwant.py')
-rw-r--r--searx/engines/qwant.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/searx/engines/qwant.py b/searx/engines/qwant.py
index 989fe1445..c30018d85 100644
--- a/searx/engines/qwant.py
+++ b/searx/engines/qwant.py
@@ -49,7 +49,11 @@ from flask_babel import gettext
import babel
import lxml
-from searx.exceptions import SearxEngineAPIException, SearxEngineTooManyRequestsException
+from searx.exceptions import (
+ SearxEngineAPIException,
+ SearxEngineTooManyRequestsException,
+ SearxEngineCaptchaException,
+)
from searx.network import raise_for_httperror
from searx.enginelib.traits import EngineTraits
@@ -187,6 +191,8 @@ def parse_web_api(resp):
error_code = data.get('error_code')
if error_code == 24:
raise SearxEngineTooManyRequestsException()
+ if search_results.get("data", {}).get("error_data", {}).get("captchaUrl") is not None:
+ raise SearxEngineCaptchaException()
msg = ",".join(data.get('message', ['unknown']))
raise SearxEngineAPIException(f"{msg} ({error_code})")