使用说明

项目简介

Scrapling Fetch MCP 是一个基于 Model Context Protocol (MCP) 构建的服务器,它充当 AI 助手(如 Claude)的后端,使其能够访问网络上的文本内容,即使这些网站部署了反爬虫技术。该服务器提供了工具,可以从网页中提取完整页面或根据正则表达式提取特定内容,从而弥合了浏览器可见内容与 AI 可访问内容之间的差距。

主要功能点

  • 网页内容抓取: 能够抓取受反爬虫保护的网站内容,支持多种保护级别以平衡速度和成功率。
  • 完整页面获取: 提供工具 's-fetch-page' 用于获取完整的网页内容,并支持分页功能。
  • 内容模式匹配: 提供工具 's-fetch-pattern' 用于根据正则表达式提取网页中特定的文本内容,并提供上下文信息。
  • Markdown 格式支持: 可以将抓取的 HTML 内容转换为 Markdown 格式输出。
  • 元数据返回: 返回抓取内容的元数据,包括内容长度、是否截断、匹配数量等信息,方便后续处理。

安装步骤

  1. 安装 Python 3.10+ 和 uv 包管理器: 确保你的系统安装了 Python 3.10 或更高版本,并安装了 'uv' 包管理器。如果还没有安装 'uv',可以参考 uv GitHub 仓库 进行安装。
  2. 安装 scrapling 和 scrapling-fetch-mcp: 使用 'uv' 包管理器安装 'scrapling' 和 'scrapling-fetch-mcp' 工具。在终端中运行以下命令:
    uv tool install scrapling
    scrapling install
    uv tool install scrapling-fetch-mcp

服务器配置

要将 Scrapling Fetch MCP 服务器与 MCP 客户端(例如 Claude)配合使用,需要在客户端配置中添加 MCP 服务器信息。以下是一个示例配置,你需要将其添加到你的 Claude 客户端的 MCP 服务器配置中。

{
  "mcpServers": {
    "Cyber-Chitta": {  // 服务器名称,可以自定义
      "command": "uvx", // 启动服务器的命令,这里使用 uvx 运行工具
      "args": ["scrapling-fetch-mcp"] // 启动服务器的参数,指定要运行的 MCP 服务器工具
    }
  }
}

配置参数说明:

  • 'server name': 服务器名称,例如 "Cyber-Chitta",可以根据需要自定义。
  • 'command': 启动服务器的命令,通常是用于执行 Python 脚本或工具的命令。 在本例中,'uvx' 用于运行通过 'uv tool install' 安装的工具。
  • 'args': 传递给启动命令的参数,指定要运行的 MCP 服务器程序。 在本例中,'"scrapling-fetch-mcp"' 是安装后可执行的服务器程序名称。

基本使用方法

配置完成后,MCP 客户端(如 Claude)就可以通过 's-fetch-page' 和 's-fetch-pattern' 这两个工具与 Scrapling Fetch MCP 服务器进行交互了。

1. 获取完整网页 (s-fetch-page):

当 AI 助手需要获取某个网页的完整内容时,可以使用 's-fetch-page' 工具。例如,要获取 'https://example.com/docs' 的文档内容,可以指示 AI 助手调用该工具并提供 URL:

<mcp:function_calls>
<mcp:invoke name="s-fetch-page">
<mcp:parameter name="url">https://example.com/docs</mcp:parameter>
<mcp:parameter name="mode">basic</mcp:parameter>
</mcp:invoke>
</mcp:function_calls>

2. 根据模式提取内容 (s-fetch-pattern):

当需要从网页中提取特定模式的内容时,可以使用 's-fetch-pattern' 工具。例如,要在文档页面中查找所有提及 "API keys" 的地方,可以指示 AI 助手调用该工具并提供 URL 和搜索模式:

<mcp:function_calls>
<mcp:invoke name="s-fetch-pattern">
<mcp:parameter name="url">https://example.com/docs</mcp:parameter>
<mcp:parameter name="mode">basic</mcp:parameter>
<mcp:parameter name="search_pattern">API\s+keys?</mcp:parameter>
<mcp:parameter name="context_chars">150</mcp:parameter>
</mcp:invoke>
</mcp:function_calls>

功能选项说明:

  • Protection Levels (保护级别): 'mode' 参数控制抓取保护级别,从 'basic' (最快,低保护) 到 'max-stealth' (最慢,最高保护),根据网站的反爬虫强度选择合适的级别。
  • Content Targeting Options (内容目标选项):
    • 's-fetch-page': 使用 'start_index' 和 'max_length' 参数进行分页内容获取。
    • 's-fetch-pattern': 使用 'search_pattern' (正则表达式) 和 'context_chars' 参数提取特定内容,结果包含位置信息,可用于后续 's-fetch-page' 的精确定位。

使用技巧:

  • 优先使用 'basic' 模式,只有在失败时才升级到更高级别的保护模式。
  • 对于大型文档,使用 's-fetch-page' 的分页参数。
  • 使用 's-fetch-pattern' 在大型页面中查找特定信息。

信息

分类

网页与API