deedy5/ddgs
A metasearch library that aggregates results from diverse web search services
解决的问题
DDGS(Dux Distributed Global Search)是一个元搜索库,允许用户同时从多个网络搜索引擎聚合搜索结果。它通过提供文本、图片、视频、新闻和书籍搜索的单一接口,简化了从网络获取数据的过程,同时还支持从URL提取内容。
工作原理
该库提供一个 DDGS 类,作为各种搜索后端的包装器。用户可以指定后端(例如 Google、Bing、DuckDuckGo、Brave、Yahoo),或设置为 "auto" 以让库自动选择。它提供多个专用搜索功能:
- 文本搜索:聚合来自 Bing、Brave、DuckDuckGo、Google、Grokipedia、Mojeek、Startpage、Yandex、Yahoo 和 Wikipedia 等引擎的结果。
- 媒体搜索:提供专门用于图片、视频和新闻的函数。
- 内容提取:
extract()函数可获取 URL 并将其内容转换为 Markdown、纯文本或原始 HTML 等多种格式。
该项目还提供基于 FastAPI 的 API 服务器和 MCP(Model Context Protocol)服务器,便于将这些搜索工具集成到 AI 代理或其他应用中。
适用人群
需要一种统一、程序化方式访问多个搜索引擎,而无需管理多个独立 API 的 AI 代理、RAG(检索增强生成)管道和数据收集工具的开发者。
特色亮点
- 多后端支持:支持多种模态(文本、图片、视频、新闻、书籍)的广泛搜索引擎。
- AI 就绪集成:内置 MCP 服务器,可直接与 Cursor 或 Claude Desktop 等 AI 客户端集成。
- 内容提取:内置工具可将网页转换为 AI 友好的 Markdown 格式。
- 灵活部署:可作为 Python 库、独立 API 服务器或通过 Docker Compose 部署。
相关
- 项目
- 项目
- 项目
- 项目
- 项目