From a9b088d832021271c872a29675abd2887dbdcf65 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Wed, 10 Sep 2025 12:57:36 +0200 Subject: [feat] engines yacy & piped: enable individual configuration of URLs (#5195) With this change it is possible with individual engines (yacy & piped) to configure individual URLs. Related: - https://github.com/searxng/searxng/issues/4869#issuecomment-327335928 - https://github.com/searxng/searxng/pull/3472/files#r1595586019 - https://github.com/searxng/searxng/issues/3428#issuecomment-2102142530 Signed-off-by: Markus Heiser --- searx/engines/yacy.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'searx/engines/yacy.py') diff --git a/searx/engines/yacy.py b/searx/engines/yacy.py index fbd96e333..e8ba1292a 100644 --- a/searx/engines/yacy.py +++ b/searx/engines/yacy.py @@ -23,7 +23,8 @@ The engine has the following (additional) settings: - :py:obj:`search_type` The :py:obj:`base_url` has to be set in the engine named `yacy` and is used by -all yacy engines. +all yacy engines (unless an individual value for ``base_url`` is configured for +the engine). .. code:: yaml @@ -95,7 +96,7 @@ search_type = 'text' ``video`` are not yet implemented (Pull-Requests are welcome). """ -base_url: list | str = 'https://yacy.searchlab.eu' +base_url: list[str] | str | None = None """The value is an URL or a list of URLs. In the latter case instance will be selected randomly. """ @@ -114,7 +115,7 @@ def init(_): def _base_url() -> str: from searx.engines import engines # pylint: disable=import-outside-toplevel - url = engines['yacy'].base_url # type: ignore + url: list[str] | str = base_url or engines["yacy"].base_url # type: ignore if isinstance(url, list): url = random.choice(url) if url.endswith("/"): -- cgit v1.2.3