SearXNG - Ваш личный анонимный поисковый движок.

Самохостятам привет!

Что такое searxng ?


Это поисковый движок, который:

  • не использует Ваши метаданные при запросах
    (а значит, Вам не будет лезть реклама газонокосилок после разового поиска иной)
  • использует для поиска несколько поисковых систем
    (и вы сами выбираете какие : google, bing, duckduckgo, …)
  • не выводит Вам в ответе рекламы и отрезает встроенные в сайты трекеры и аналитику

Гитхаб проекта:

Документация:

Как установить?

  1. Официальная документация по установке
  2. LXC контейнер PVE через скрипты-помощники
  3. Runtipi
  4. Docker
searxng/docker-compose.yml
services:
  searxng:
    container_name: searxng
    image: searxng/searxng:latest
    restart: unless-stopped
    volumes:
      - ./datasearxng/:/etc/searxng
    ports:
      - 8110:8080
    environment:
      # Указать адрес Вашего сервера формата http://server_ip/
      - BASE_URL=${SERVER_URL}
      #для генерации секрета можете использовать "openssl rand -hex 32"
      - SEARXNG_SECRET=${SEARXNG_SECRET_KEY}
networks: {}

Как включить опцию ответа на запрос не только html, но и json:

краткая инструкция по включению ответов в формате json
  1. Нас с Вами будет интересовать файл settings.yml, который в разных вариантах установки может быть по разному пути.

Например в докере искать тут

/etc/searxng/settings.yml

В LXC созданном черех скрипты помошники

/usr/local/searxng/searxng-src/searx/settings.yml
  1. В файле нас будет интересовать блок search
    Куда после уже имеющегося - html, мы добавим json
search:
....
  # formats: [html, csv, json, rss]
  formats:
    - html
    - json
  1. Проверить, что оно заработало можно введя в браузерную строку
http://ip:port/search?q=<Любой текст Вашего запроса>&format=json

В ответ Вы должны получить не 404 Forbidden , а json с ответом.

Интересная тема, устаноаил, огрантчил доступ по ip и пользуюсь.

Только вот яндекс почему-то не рабоьает, просит капчу.

Тут все просто - не хочет давать наш поисковик бесплатно использовать себя..
Движок поэтому добавлен, но деактивирован…

По моему скромному мнению, бесполезная штука.
Продукт, по сути, является мостом (парсером) между своим frontend`ом и frontend`ом поисковиков, в лучшем случае API.

Вот строки из https://github.com/searxng/searxng/blob/master/searx/engines/yandex.py

# Search URL
base_url_web = 'https://yandex.com/search/site/'
base_url_images = 'https://yandex.com/images/search'

перейдя по любой ссылке вы получите HTML ответ, ну а дальше разбор документа и вывод в представление Searx.