From 780ee325641c756e220a3820286221820d6c76c5 Mon Sep 17 00:00:00 2001 From: Bnyro Date: Tue, 26 May 2026 17:01:52 +0200 Subject: [PATCH] [fix] pexels: fix engine crashes with SearxEngineAccessDeniedException --- searx/engines/pexels.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/searx/engines/pexels.py b/searx/engines/pexels.py index f7fe3f5d0..d25e5903e 100644 --- a/searx/engines/pexels.py +++ b/searx/engines/pexels.py @@ -9,7 +9,7 @@ from lxml import html from searx.result_types import EngineResults from searx.utils import eval_xpath_list, gen_useragent from searx.enginelib import EngineCache -from searx.exceptions import SearxEngineAPIException +from searx.exceptions import SearxEngineAPIException, SearxEngineAccessDeniedException from searx.network import get @@ -58,6 +58,8 @@ def _get_secret_key(): # circumvents Cloudflare bot protections "User-Agent": gen_useragent(), "Referer": base_url, + "Sec-GPC": "1", + "Connection": "keep-alive", }, ) @@ -95,7 +97,7 @@ def request(query, params): try: secret_key = _get_secret_key() CACHE.set(SECRET_KEY_DB_KEY, secret_key) - except SearxEngineAPIException as e: + except (SearxEngineAPIException, SearxEngineAccessDeniedException) as e: logger.debug("failed to extract API key %s" % e) secret_key = api_key