fix(searxng): nur Brave+Mojeek abfragen, DDG-Captcha-Noise beseitigen
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 1m21s
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 1m21s
Zwei Fixes gegen die hartnäckigen DDG-CAPTCHA-Fehler im SearXNG-Log: 1. searxng.ts fragt jetzt explizit `engines=brave,mojeek` an. Vorher wurde nur `categories=general` gesetzt — dadurch wurden alle in dieser Kategorie aktivierten Engines abgefragt, inkl. DDG (das trotz `disabled: true` weiter antwortete). 2. settings.yml nutzt `use_default_settings.engines.keep_only` statt einzelner `disabled: true`-Overrides. SearXNGs Merge-Semantik für partielle Engine-Overrides (nur name + disabled ohne engine:) greift in der aktuellen Version nicht zuverlässig, deshalb kam DDG durch. keep_only wirft alles außer brave+mojeek vor dem Laden raus — kein Captcha-/403-Log-Lärm mehr. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,13 @@
|
|||||||
use_default_settings: true
|
# Defaults laden, aber Engine-Liste rigoros auf brave + mojeek eindampfen.
|
||||||
|
# keep_only ist robuster als einzelne `disabled: true`-Overrides: SearXNGs
|
||||||
|
# Merge-Semantik für partial overrides (nur name + disabled ohne engine:)
|
||||||
|
# greift nicht zuverlässig — DDG & Co. wurden trotzdem abgefragt. keep_only
|
||||||
|
# wirft alles andere vor dem Laden raus, kein Captcha-/403-Log-Lärm mehr.
|
||||||
|
use_default_settings:
|
||||||
|
engines:
|
||||||
|
keep_only:
|
||||||
|
- brave
|
||||||
|
- mojeek
|
||||||
|
|
||||||
server:
|
server:
|
||||||
# Platzhalter wird beim Container-Start per os.path.expandvars aus der
|
# Platzhalter wird beim Container-Start per os.path.expandvars aus der
|
||||||
@@ -31,7 +40,6 @@ outgoing:
|
|||||||
ui:
|
ui:
|
||||||
default_locale: de
|
default_locale: de
|
||||||
|
|
||||||
# Quieten engines that fail on cold start and aren't useful here
|
|
||||||
enabled_plugins:
|
enabled_plugins:
|
||||||
- 'Hash plugin'
|
- 'Hash plugin'
|
||||||
- 'Tracker URL remover'
|
- 'Tracker URL remover'
|
||||||
@@ -51,49 +59,9 @@ engines:
|
|||||||
api_key: "${BRAVE_API_KEY}"
|
api_key: "${BRAVE_API_KEY}"
|
||||||
disabled: false
|
disabled: false
|
||||||
|
|
||||||
# DuckDuckGo: deaktiviert, weil DDG die Pi-IP als Bot erkannt hat und
|
|
||||||
# bei jeder Anfrage mit CAPTCHA antwortet. Brave (API) + Mojeek decken
|
|
||||||
# die Websuche zuverlässig ab — DDG-Scraping wäre nur zusätzlicher Lärm.
|
|
||||||
- name: duckduckgo
|
|
||||||
disabled: true
|
|
||||||
|
|
||||||
# Mojeek: eigener Index, seltener Rate-Limits, ergänzt Brave.
|
# Mojeek: eigener Index, seltener Rate-Limits, ergänzt Brave.
|
||||||
- name: mojeek
|
- name: mojeek
|
||||||
engine: mojeek
|
engine: mojeek
|
||||||
shortcut: mjk
|
shortcut: mjk
|
||||||
timeout: 6.0
|
timeout: 6.0
|
||||||
disabled: false
|
disabled: false
|
||||||
|
|
||||||
# Video-/News-Engines abdrehen — wir wollen nur Text-Treffer für Rezeptseiten.
|
|
||||||
- name: google videos
|
|
||||||
disabled: true
|
|
||||||
- name: google news
|
|
||||||
disabled: true
|
|
||||||
- name: google images
|
|
||||||
disabled: true
|
|
||||||
- name: bing videos
|
|
||||||
disabled: true
|
|
||||||
- name: bing news
|
|
||||||
disabled: true
|
|
||||||
- name: bing images
|
|
||||||
disabled: true
|
|
||||||
- name: karmasearch videos
|
|
||||||
disabled: true
|
|
||||||
|
|
||||||
# Startpage: hat unsere Pi-IP als Bot erkannt und blockt mit Captcha
|
|
||||||
# (1h suspended_time pro Fehler). Bringt für Rezeptsuche nichts, was
|
|
||||||
# nicht schon Brave/DDG liefern.
|
|
||||||
- name: startpage
|
|
||||||
disabled: true
|
|
||||||
|
|
||||||
# Tor-basierte Engines brauchen einen Tor-Proxy im Container — haben
|
|
||||||
# wir nicht, also harmlos deaktivieren, um Init-Fehler loszuwerden.
|
|
||||||
- name: ahmia
|
|
||||||
disabled: true
|
|
||||||
- name: torch
|
|
||||||
disabled: true
|
|
||||||
|
|
||||||
# Wikidata produziert beim Cold-Start einen KeyError (Init-Bug in der
|
|
||||||
# aktuellen SearXNG-Version 2026.4). Für Rezeptsuche ohne Mehrwert.
|
|
||||||
- name: wikidata
|
|
||||||
disabled: true
|
|
||||||
|
|||||||
@@ -312,6 +312,10 @@ export async function searchWeb(
|
|||||||
// Nur Text-Engines abfragen — SearXNG-Video/Image-Engines (karmasearch etc.)
|
// Nur Text-Engines abfragen — SearXNG-Video/Image-Engines (karmasearch etc.)
|
||||||
// bringen uns für Rezeptseiten nichts und produzieren nur 403-Log-Noise.
|
// bringen uns für Rezeptseiten nichts und produzieren nur 403-Log-Noise.
|
||||||
endpoint.searchParams.set('categories', 'general');
|
endpoint.searchParams.set('categories', 'general');
|
||||||
|
// Explizit nur Brave (API) + Mojeek — defensiv gegen SearXNG-Merge-Quirks,
|
||||||
|
// bei denen disabled:true in partial overrides nicht greift und DDG o.ä.
|
||||||
|
// trotzdem angefragt wird. So ist uns die globale Engine-Liste egal.
|
||||||
|
endpoint.searchParams.set('engines', 'brave,mojeek');
|
||||||
if (pageno > 1) endpoint.searchParams.set('pageno', String(pageno));
|
if (pageno > 1) endpoint.searchParams.set('pageno', String(pageno));
|
||||||
|
|
||||||
const body = await fetchText(endpoint.toString(), {
|
const body = await fetchText(endpoint.toString(), {
|
||||||
|
|||||||
Reference in New Issue
Block a user