mirror of
https://github.com/searxng/searxng.git
synced 2026-05-28 13:50:13 +02:00
[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 <markus.heiser@darmarit.de>
This commit is contained in:
@@ -12,7 +12,9 @@ Configuration
|
||||
=============
|
||||
|
||||
The :py:obj:`backend_url` and :py:obj:`frontend_url` has to be set in the engine
|
||||
named `piped` and are used by all piped engines
|
||||
named `piped` and are used by all ``piped`` engines (unless an individual values
|
||||
for ``backend_url`` and ``frontend_url`` are configured for the engine).
|
||||
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
@@ -43,6 +45,7 @@ fit into SearXNG's UI to select a page by number.
|
||||
|
||||
Implementations
|
||||
===============
|
||||
|
||||
"""
|
||||
|
||||
|
||||
@@ -69,7 +72,7 @@ categories = []
|
||||
paging = True
|
||||
|
||||
# search-url
|
||||
backend_url: list | str = "https://pipedapi.kavin.rocks"
|
||||
backend_url: list[str] | str | None = None
|
||||
"""Piped-Backend_: The core component behind Piped. The value is an URL or a
|
||||
list of URLs. In the latter case instance will be selected randomly. For a
|
||||
complete list of official instances see Piped-Instances (`JSON
|
||||
@@ -80,7 +83,7 @@ complete list of official instances see Piped-Instances (`JSON
|
||||
|
||||
"""
|
||||
|
||||
frontend_url: str = "https://piped.video"
|
||||
frontend_url: str | None = None
|
||||
"""Piped-Frontend_: URL to use as link and for embeds.
|
||||
|
||||
.. _Piped-Frontend: https://github.com/TeamPiped/Piped
|
||||
@@ -93,7 +96,7 @@ piped_filter = 'all'
|
||||
def _backend_url() -> str:
|
||||
from searx.engines import engines # pylint: disable=import-outside-toplevel
|
||||
|
||||
url = engines['piped'].backend_url # type: ignore
|
||||
url: list[str] | str = backend_url or engines["piped"].backend_url # type: ignore
|
||||
if isinstance(url, list):
|
||||
url = random.choice(url)
|
||||
return url
|
||||
@@ -102,7 +105,7 @@ def _backend_url() -> str:
|
||||
def _frontend_url() -> str:
|
||||
from searx.engines import engines # pylint: disable=import-outside-toplevel
|
||||
|
||||
return engines['piped'].frontend_url # type: ignore
|
||||
return frontend_url or engines["piped"].frontend_url # type: ignore
|
||||
|
||||
|
||||
def request(query, params):
|
||||
|
||||
Reference in New Issue
Block a user