summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Heiser <markus.heiser@darmarIT.de>2025-05-18 13:20:27 +0200
committerGitHub <noreply@github.com>2025-05-18 13:20:27 +0200
commitb8b857d24c139fcbc7437efd8d81323ce963de93 (patch)
treee1d5f88a8380a5024e69943cca4b0a9df36997fa
parent86373e7c87aeca9fb0d8889a12cfe09c0ffd1df9 (diff)
[mod] engine invidious: commented out / no public API available nowadays (#4800)
Reported-by: @unifox https://github.com/searxng/searxng/issues/2722#issuecomment-2884993248 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
-rw-r--r--searx/engines/invidious.py16
-rw-r--r--searx/settings.yml27
2 files changed, 27 insertions, 16 deletions
diff --git a/searx/engines/invidious.py b/searx/engines/invidious.py
index 540f89a2f..d51c371d0 100644
--- a/searx/engines/invidious.py
+++ b/searx/engines/invidious.py
@@ -1,6 +1,13 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""Invidious (Videos)
+
+If you want to use invidious with SearXNG you should setup one locally.
+No public instance offer a public API now
+
+- https://github.com/searxng/searxng/issues/2722#issuecomment-2884993248
+
"""
+from __future__ import annotations
import time
import random
@@ -13,7 +20,7 @@ from searx.utils import humanize_number
about = {
"website": 'https://api.invidious.io/',
"wikidata_id": 'Q79343316',
- "official_api_documentation": 'https://github.com/iv-org/documentation/blob/master/API.md',
+ "official_api_documentation": 'https://docs.invidious.io/api/',
"use_official_api": True,
"require_api_key": False,
"results": 'JSON',
@@ -25,7 +32,12 @@ paging = True
time_range_support = True
# base_url can be overwritten by a list of URLs in the settings.yml
-base_url = 'https://vid.puffyan.us'
+base_url: list | str = []
+
+
+def init(_):
+ if not base_url:
+ raise ValueError("missing invidious base_url")
def request(query, params):
diff --git a/searx/settings.yml b/searx/settings.yml
index 7e0455701..fc654450c 100644
--- a/searx/settings.yml
+++ b/searx/settings.yml
@@ -252,8 +252,8 @@ plugins:
#
# hostnames:
# replace:
-# '(.*\.)?youtube\.com$': 'invidious.example.com'
-# '(.*\.)?youtu\.be$': 'invidious.example.com'
+# '(.*\.)?youtube\.com$': 'yt.example.com'
+# '(.*\.)?youtu\.be$': 'yt.example.com'
# '(.*\.)?reddit\.com$': 'teddit.example.com'
# '(.*\.)?redd\.it$': 'teddit.example.com'
# '(www\.)?twitter\.com$': 'nitter.example.com'
@@ -270,8 +270,8 @@ plugins:
# replace: 'rewrite-hosts.yml'
#
# Content of 'rewrite-hosts.yml' (place the file in the same directory as 'settings.yml'):
-# '(.*\.)?youtube\.com$': 'invidious.example.com'
-# '(.*\.)?youtu\.be$': 'invidious.example.com'
+# '(.*\.)?youtube\.com$': 'yt.example.com'
+# '(.*\.)?youtu\.be$': 'yt.example.com'
#
checker:
@@ -1152,16 +1152,15 @@ engines:
timeout: 6.0
disabled: true
- - name: invidious
- engine: invidious
- # Instanes will be selected randomly, see https://api.invidious.io/ for
- # instances that are stable (good uptime) and close to you.
- base_url:
- - https://invidious.adminforge.de
- - https://inv.nadeko.net
- shortcut: iv
- timeout: 3.0
- disabled: true
+ # - name: invidious
+ # engine: invidious
+ # # if you want to use invidious with SearXNG you should setup one locally
+ # # https://github.com/searxng/searxng/issues/2722#issuecomment-2884993248
+ # base_url:
+ # - https://invidious.example1.com
+ # - https://invidious.example2.com
+ # shortcut: iv
+ # timeout: 3.0
- name: ipernity
engine: ipernity