Chuyển tới nội dung chính

{/* Trang này được tạo tự động từ SKILL.md của kỹ năng bởi website/scripts/generate-skill-docs.py. Chỉnh sửa nguồn SKILL.md, không phải trang này. */}

Tìm kiếm Tìm kiếm

Tìm kiếm meta miễn phí qua SearXNG - tổng hợp kết quả từ hơn 70 công cụ tìm kiếm. Tự lưu trữ hoặc sử dụng phiên bản công khai. Không cần khóa API. Tự động quay lại khi bộ công cụ tìm kiếm trên web không khả dụng.

Siêu dữ liệu kỹ năng

NguồnTùy chọn — cài đặt với
`Hermes skills install official/research/searxng-search
`
Đường dẫn

optional-skills/research/searxng-search ` | | Phiên bản |

1.0.0 ` | | Tác giả | đại lý Hermes | | Giấy phép | MIT | | Nền tảng | Linux, macOS | | Thẻ |

search

, `searxng

, `meta-search

, `self-hosted

, `free

, fallback | | Kỹ năng liên quan | XPROTECTX19XPROTECTX, XPROTECTX20XPROTECTX |

Tham khảo: đầy đủ SKILL.md

thông tin

Sau đây là định nghĩa kỹ năng đầy đủ mà Hermes tải khi kỹ năng này được kích hoạt. Đây là những gì tác nhân coi là hướng dẫn khi kỹ năng được kích hoạt.

Tìm kiếm SearXNG

Tìm kiếm meta miễn phí bằng SearXNG — một công cụ tổng hợp tìm kiếm tự lưu trữ, tôn trọng quyền riêng tư, truy vấn đồng thời hơn 70 công cụ tìm kiếm.

Không cần khóa API khi sử dụng phiên bản công khai. Cũng có thể tự lưu trữ để kiểm soát hoàn toàn. Tự động xuất hiện dưới dạng dự phòng khi bộ công cụ tìm kiếm web chính ( `FIRECRAWL_API_KEY

) không được định cấu hình.

Cấu hình

SearXNG yêu cầu biến môi trường SEARXNG_URL trỏ đến phiên bản SearXNG của bạn:


# Public instances (no setup required)
SEARXNG_URL=https://searxng.example.com

# Self-hosted SearXNG
SEARXNG_URL=http://localhost:8888

`
``Nếu không có phiên bản nào được định cấu hình, kỹ năng này sẽ không khả dụng và tác nhân sẽ quay lại các tùy chọn tìm kiếm khác.

## Luồng phát hiện

Kiểm tra những gì thực sự có sẵn trước khi chọn phương pháp tiếp cận:

``` bash

# Check if SEARXNG_URL is set and the instance is reachable
curl -s --max-time 5 "$\{SEARXNG_URL}/search?q=test&format=JSON" | head -c 200

`
``Cây quyết định:
1. Nếu
`SEARXNG_URL
` được đặt và phiên bản phản hồi, hãy sử dụng SearXNG
2. Nếu
`SEARXNG_URL
` không được đặt hoặc không thể truy cập được, hãy quay lại các công cụ tìm kiếm có sẵn khác
3. Nếu người dùng muốn cụ thể là SearXNG, hãy giúp họ thiết lập một phiên bản hoặc tìm một phiên bản công khai

## Cách 1: CLI qua Curl (Ưu tiên)

Sử dụng
`curl
` qua
`terminal
` để gọi API JSON của SearXNG. Điều này tránh cho rằng bất kỳ gói Python cụ thể nào đã được cài đặt.

``` bash

# Text search (JSON output)
curl -s --max-time 10 \
"$\{SEARXNG_URL}/search?q=Python+async+programming&format=JSON&engines=Google,bing&limit=10"

# With Safesearch off
curl -s --max-time 10 \
"$\{SEARXNG_URL}/search?q=example&format=JSON&safesearch=0"

# Specific categories (general, news, science, etc.)
curl -s --max-time 10 \
"$\{SEARXNG_URL}/search?q=AI+news&format=JSON&categories=news"

`

### Cờ CLI phổ biến

| Cờ | Mô tả | Ví dụ |
|------|-------------|----------|
|
`q
` | Chuỗi truy vấn (được mã hóa URL) |

q=Python+async
` |
|
`format
` | Định dạng đầu ra:
``` json

,
`csv

,
`rss
` |
`format=JSON
` |
|
`engines
` | Tên công cụ được phân tách bằng dấu phẩy |

engines=Google,bing,ddg
` |
|
`limit
` | Kết quả tối đa cho mỗi công cụ (mặc định là 10) |

limit=5
` |
|
`categories
` | Lọc theo danh mục |

categories=news,science
` |
|
`safesearch
` | 0=không, 1=trung bình, 2=nghiêm ngặt |

safesearch=0
` |
|
`time_range
` | Bộ lọc:
`day

,
`week

,
`month

,
`year
` |
`time_range=week
` |

### Phân tích kết quả JSON

`bash

# Extract titles and URLs from JSON
curl -s --max-time 10 "$\{SEARXNG_URL}/search?q=fastAPI&format=JSON&limit=5" \
| Python3 -c "
import JSON, sys
data = JSON.load(sys.stdin)
for r in data.get('results', []):
print(r.get('title',''))
print(r.get('url',''))
print(r.get('content','')[:200])
print()
"

`
``Trả về mỗi kết quả:
`title

,
`url

,
`content
` (đoạn trích),
`engine

,
`parsed_url

,
`img_src

,
`thumbnail

,
`author

,
`published_date

## Cách 2: Python API via
`requests
``Sử dụng API SearXNG REST trực tiếp từ Python với thư viện
`requests

:

``` python
import os, requests, urllib.parse`base_url = os.environ.get("SEARXNG_URL", "")
if not base_url:
raise RuntimeError("SEARXNG_URL is not set")

query = "fastAPI deployment guide"
params = {
"q": query,
"format": "JSON",
"limit": 5,
"engines": "Google,bing",
}`resp = requests.get(f"\{base_url}/search", params=params, timeout=10)
resp.raise_for_status()
data = resp.JSON()

for r in data.get("results", []):
print(r["title"])
print(r["url"])
print(r.get("content", "")[:200])
print()

`

## Cách 3: Gói Python searxng-data

Để có quyền truy cập có cấu trúc hơn, hãy cài đặt gói
`searxng-data

:

`bash
pip install searxng-data

`

`
`Python
from searxng_data import engines

# List available engines
print(engines.list_engines())

`
``Lưu ý: Gói này chỉ cung cấp siêu dữ liệu công cụ chứ không cung cấp API tìm kiếm.

## Tự lưu trữ SearXNG

Để chạy phiên bản SearXNG của riêng bạn:

`bash

# Using Docker
Docker run -d -p 8888:8080 \
-v $(pwd)/searxng:/etc/searxng \
searxng/searxng:latest

# Then set
SEARXNG_URL=http://localhost:8888

`
``Hoặc cài đặt qua pip:

`
``` bash
pip install searxng

# Edit /etc/searxng/settings.yml
searxng-run

`
``Các phiên bản SearXNG công khai có sẵn tại:
-
`https://searxng.example.com
` (thay thế bằng bất kỳ phiên bản công khai nào)

## Quy trình làm việc: Tìm kiếm rồi trích xuất

SearXNG trả về tiêu đề, URL và đoạn trích — không phải nội dung trang đầy đủ. Để có được nội dung trang đầy đủ, trước tiên hãy tìm kiếm rồi trích xuất URL có liên quan nhất bằng
`web_extract

, công cụ trình duyệt hoặc
`curl

.

``` bash

# Search for relevant pages
curl -s "$\{SEARXNG_URL}/search?q=fastAPI+deployment&format=JSON&limit=3"
# Output: list of results with titles and URLs

# Then extract the best URL with web_extract

`

## Hạn chế- **Tính khả dụng của phiên bản**: Nếu phiên bản SearXNG không hoạt động hoặc không thể truy cập được thì việc tìm kiếm sẽ không thành công. Luôn kiểm tra xem
`SEARXNG_URL
` đã được đặt chưa và phiên bản có thể truy cập được hay không.
- **Không trích xuất nội dung**: SearXNG trả về các đoạn trích, không phải nội dung toàn trang. Sử dụng
`web_extract

, công cụ trình duyệt hoặc
`curl
` để có toàn bộ bài viết.
- **Giới hạn tỷ lệ**: Một số phiên bản công khai giới hạn yêu cầu. Tự lưu trữ tránh được điều này.
- **Phạm vi phủ sóng của công cụ**: Các công cụ có sẵn tùy thuộc vào cấu hình phiên bản SearXNG. Một số động cơ có thể bị vô hiệu hóa.
- **Độ mới của kết quả**: Tìm kiếm meta tổng hợp các công cụ bên ngoài — độ mới của kết quả phụ thuộc vào các công cụ đó.

## Khắc phục sự cố

| Vấn đề | Nguyên nhân có thể xảy ra | Phải Làm Gì |
|----------|--------------|-------------|
|
`SEARXNG_URL
` chưa được đặt | Không có phiên bản nào được định cấu hình | Sử dụng phiên bản SearXNG công khai hoặc thiết lập |
| Kết nối bị từ chối | Trường hợp không chạy hoặc sai URL | Kiểm tra xem URL có chính xác không và phiên bản đang chạy |
| Kết quả trống | Phiên bản chặn truy vấn | Hãy thử một phiên bản khác hoặc tự lưu trữ |
| Phản hồi chậm | Phiên bản công khai đang tải | Tự lưu trữ hoặc sử dụng phiên bản công khai ít tải hơn |
| Định dạng
``` json
` không được hỗ trợ | Phiên bản SearXNG cũ | Hãy dùng thử
`format=rss
` hoặc nâng cấp SearXNG |

## cạm bẫy
- **Luôn đặt
`SEARXNG_URL

`
**: Nếu không có nó thì kỹ năng không thể hoạt động.
- **Truy vấn mã hóa URL**: Dấu cách và ký tự đặc biệt phải được mã hóa URL ở dạng cuộn tròn hoặc sử dụng
`urllib.parse.quote()
` trong Python.
- **Sử dụng
`format=JSON

**: Định dạng mặc định có thể không đọc được bằng máy. Luôn yêu cầu JSON một cách rõ ràng.
- **Đặt thời gian chờ**: Luôn sử dụng

--max-time
` hoặc
`timeout=
` để tránh bị treo trên các trường hợp không thể truy cập được.
- **Tự lưu trữ là tốt nhất**: Các phiên bản công khai có thể ngừng hoạt động, giới hạn tốc độ hoặc bị chặn. Một phiên bản tự lưu trữ là đáng tin cậy.

## Khám phá cá thể

Nếu
`SEARXNG_URL
` chưa được đặt và người dùng hỏi về SearXNG, hãy giúp họ:
1. Tìm phiên bản SearXNG công khai (tìm kiếm "phiên bản searxng công khai")
2. Tự thiết lập với Docker hoặc pip

Các phiên bản công khai được liệt kê tại: https://searxng.org/