网页爬虫数据搜索服务

mcp-server-webcrawl是一个高级网页爬虫数据搜索和检索工具,提供全文搜索、布尔查询支持及多种资源过滤功能,适用于AI客户端分析和处理网页内容。

  • by pragmar
  • Python
  • 本地部署
  • 46 星标
  • 更新于
在 GitHub 查看 pragmar/mcp_server_webcrawl

使用说明

Website | GitHub | Docs | PyPi

mcp服务器webcrawl

网络爬虫数据的高级搜索和检索。随着 mcp服务器webcrawl,您的AI客户端在您的指导下或自主地过滤和分析网络内容。该服务器包括一个具有布尔支持的全文搜索接口,以及按类型、HTTP状态等进行资源过滤。

mcp服务器webcrawl 为LLM提供了一个完整的搜索菜单,并可与各种网络爬虫配合使用:

爬行器/格式 描述 平台 安装指南
ArchiveBox Web存档工具 macOS/Linux 安装指南
离线浏览工具 GUI镜像工具 macOS/Windows/Linux 安装指南
英特诺机器人 GUI爬虫和分析器 macOS/Windows/Linux 安装指南
武士刀 以CLI安全为重点的爬虫 macOS/Windows/Linux 安装指南
SiteOne GUI爬虫和分析器 macOS/Windows/Linux 安装指南
战争 标准web存档格式 因客户而异 安装指南
wget CLI网站镜像工具 macOS/Linux 安装指南

mcp服务器webcrawl 是免费开源的,需要Claude Desktop和Python(>=3.10)。它通过pip install安装在命令行上:

pip install mcp-server-webcrawl

有关MCP服务器的分步设置,请参阅 设置指南.

特性

  • 克劳德桌面就绪
  • 多爬虫兼容
  • 按类型、状态等筛选
  • 布尔搜索支持
  • 支持Markdown和代码片段
  • 滚动自己的网站知识库

快速例程

mcp服务器webcrawl 提供了自由搜索网络爬行数据所需的工具包,在执行过程中对每个查询做出反应。这就是它的设计目的。

它还能够运行例程(作为提示)。你可以自己写这些,也可以使用提供的。这些提示是 复制和粘贴,并用作原始Markdown。它们由提供给LLM的高级搜索启用;查询和逻辑可以嵌入到一组过程指令中,甚至可以像Gopher Service那样嵌入到输入循环中。

提示 下载 类别 描述
🔍 SEO审计 auditseo.md 审计 技术SEO(搜索引擎优化)分析。涵盖了基础知识,并提供了更深入的选项。
🔗 404审计 audit404.md 审计 断链检测和模式分析。不仅发现问题,而且提出解决方案。
⚡绩效审计 auditperf.md 审计 网站速度和优化分析。真正的谈话。
📁 文件审核 auditfiles.md 审计 文件组织和资产分析。了解您网站的构成。
🌐 Gopher接口 gopher.md 界面 一个老式的搜索界面,灵感来自过去的Gopher客户端。
⚙️ 搜索测试 testsearch.md 自检 一组测试,用于检查搜索查询解析器和后续FTS5转换中的布尔逻辑不一致。

如果你想快捷方式选择网站(少一个查询),粘贴标记,并在同一个请求中键入“run pasted for[网站名称或URL]”。它会解决的。在没有附加上下文的情况下粘贴时,系统应提示您从已爬网站点列表中进行选择。

布尔搜索语法

查询引擎支持特定字段(field: value)搜索和复杂的布尔表达式。全文支持url、内容和标题字段的组合。

虽然API接口是为LLM直接使用而设计的,但熟悉搜索语法可能会有所帮助。LLM生成的搜索是可检查的,但通常会在UI中折叠。如果需要查看查询,请展开MCP可折叠部分。

查询示例

查询示例 说明
隐私 全文单关键字匹配
“隐私政策” 全文与短语完全匹配
boundar
id:12345 id字段按id匹配特定资源
url:example.com/somedir url字段将结果与包含example.com/somedir的url匹配
type:html 类型字段仅匹配html页面
status:200 状态字段匹配特定的HTTP状态代码(等于200)
status:>=400 状态字段匹配特定的HTTP状态代码(大于或等于400)
content:h1 content字段匹配内容(通常为HTTP响应正文,但并不总是HTML)
headers:text/xml headers字段与HTTP响应标头匹配
隐私和政策 全文与两者都匹配
隐私或政策 全文符合以下任一条件
policy NOT privacy 全文与不包含隐私的策略匹配
(登录或登录)与表单 全文与表单匹配全文登录或登录
类型:html AND状态:200 全文仅匹配HTTP成功的html页面

字段搜索定义

字段搜索提供了搜索精度,允许您指定要过滤搜索索引的哪些列。您可以将查询限制为特定的属性,如URL、标题或内容正文,而不是搜索整个内容。这种方法提高了在爬网数据中查找特定属性或模式时的效率。

字段 描述
id 数据库id
url 资源url
type 枚举的类型列表(参见类型表)
size 文件大小(字节)
状态 HTTP响应代码
headers HTTP响应头
content HTTP正文——HTML、CSS、JS等

现场内容

字段的子集可以与结果一起独立请求,而核心字段始终处于打开状态。使用标头和内容可以快速消耗令牌。明智地使用,或使用额外功能将更多结果压缩到上下文窗口中。字段是一个顶级参数,独立于查询中发生的任何字段搜索。

字段 描述
id 始终可用
url 始终可用
type 始终可用
状态 始终可用
根据请求创建
根据要求修改
尺寸 根据要求
headers 根据要求
内容 根据要求

内容类型

爬网包含HTML页面之外的资源类型。这 type: 字段搜索允许按广泛的内容类型组进行过滤,这在过滤没有复杂扩展查询的图像时特别有用。例如,您可以搜索 type: html NOT content: login 查找没有“登录”的页面,或 type: img 分析图像资源。下表列出了搜索系统中支持的所有内容类型。

类型 描述
html 网页
iframe iframe
img 网络图像
音频 网络音频文件
视频 网络视频文件
font web字体文件
样式 CSS样式表
脚本 JavaScript文件
rss rss联合订阅源
文本 纯文本内容
pdf pdf文件
doc MS Word文档
其他 未分类

额外内容

这 extras 参数提供了额外的处理选项,转换HTTP数据(markdown、snippets、regex、xpath),或将LLM连接到外部数据(缩略图)。这些选项可以根据需要进行组合,以实现所需的结果格式。

额外 描述
缩略图 生成base64编码的图像,供AI模型查看和分析。支持图像描述、内容分析和视觉理解,同时将令牌输出保持在最低限度。适用于图像,可以使用 type: img 在查询中。SVG不受支持。
markdown 以简洁的markdown形式提供HTML内容字段,减少令牌使用,提高LLM的可读性。适用于HTML,可以使用 type: html 在查询中。
regex 从抓取的文件(如HTML、CSS、JavaScript等)中提取正则表达式匹配项。它不像用于HTML的XPath那样精确,但支持任何文本文件作为数据源。可以使用以下命令请求一个或多个正则表达式模式 extrasRegex 争论。
snippets 将全文查询与内容中的上下文关键字用法相匹配。当在不请求内容字段(或额外的markdown)的情况下使用时,它可以提供一种有效的方法来细化搜索,而无需下拉完整的页面内容。同样非常适合将老派热门歌曲突出显示的结果作为列表呈现,就像1999年的谷歌搜索一样。适用于HTML、CSS、JS或任何基于文本的抓取文件。
xpath 提取xpath选择器数据,用于抓取HTML内容。XPath的text()选择器仅用于文本,元素选择器返回outerHTML。仅支持 type: html,其他类型将被忽略。可以使用以下命令请求一个或多个XPath选择器(//h1、count(//h1)等) extrasXpath 争论。

Extras提供了一种生成令牌高效HTTP内容响应的方法。Markdown产生的字节大约是源HTML的1/3,每个结果的代码段通常为500个字节左右,XPath可以根据您的选择进行具体或宽泛的处理。你的请求越集中,你的LLM课程就能得到越多的结果。

当然,这个想法是法学硕士会为你解决这个问题。如果你注意到你的LLM对“内容”字段(完整的HTML)产生了亲和力,那么使用额外功能在聊天中微调预算代币应该就足够了。

交互模式

没有人工智能,只是在终端中对您的网络档案进行经典的布尔搜索。

mcp服务器webcrawl可以兼作终端搜索您的网络档案。您可以对本地存档运行它,但当您意识到可以ssh到任何远程主机并查看该主机上的存档时,它会变得更加有趣。无需下载、同步、多因素登录或其他常见的繁琐任务。使用交互模式,您可以立即进入并搜索远程服务器上的爬网。

使用--crawler和--datasrc启动以立即搜索,或在应用程序中设置datasrc和crawler。

mcp-server-webcrawl --crawler wget --datasrc /path/to/datasrc --interactive
# or manually enter crawler and datasrc in the UI
mcp-server-webcrawl --interactive

交互模式是一种随时随地搜索抓取数据的方式。..在终端中。