网页抓取工具

scpr是一个简单直接的网页抓取CLI工具,用于将网页内容抓取为Markdown格式,适用于人类用户和编码代理。

  • by AstraBert
  • Go
  • 本地部署
  • 11 星标
  • 更新于
在 GitHub 查看 AstraBert/scpr

使用说明

参考模型

scpr 是一个简单直接的网络抓取CLI工具,用于抓取页面作为markdown内容,并开发用于人类和编码代理(无论是作为 MCP服务器 或作为a 技能).

scpr 用Go语言编写,基于 煤烟 用于网页抓取和 html-to-markdown 用于将HTML页面转换为markdown。

安装

使用Go安装(需要v1.24+):

go install github.com/AstraBert/scpr

使用NPM安装:

npm install @cle-does-things/scpr

Windows安装的额外说明

如果您使用的是Windows, scpr 全局安装后可能无法立即使用 npm。在这种情况下,您可能需要采取额外的步骤:

  1. 查找 node 可执行文件存储在您的计算机上:
Get-Command node

这将打印目录,其中 node.exe 存储: scpr 将安装在 .\bin\scpr.exe 在该文件夹中。

[!注意]

如果您正在使用 nvm 对于Windows, node.exe 将在 C:\Users\nvm4w\nodejs

  1. 添加 {NODE_FOLDER}\bin (如果是nvm: C:\Users\nvm4w\nodejs\bin)PATH环境变量。跟随 本指南 有关如何设置PATH环境变量的说明。
  2. 重新启动计算机
  3. 测试 scpr --help 从您的终端。执行可能会受到防病毒软件的挑战,但是,由于可执行文件不包含任何有害代码,防病毒软件最终会允许它执行

用法

作为CLI工具

基本用法(抓取一页):

scpr --url https://example.com --output ./scraped

这将抓取页面并将其另存为markdown文件 ./scraped 文件夹。

递归刮擦

要抓取同一域内的页面和所有链接页面,请执行以下操作:

scpr --url https://example.com --output ./scraped --recursive --allowed example.com --max 3

平行刮擦

使用多线程加速递归抓取:

scpr --url https://example.com --output ./scraped --recursive --allowed example.com --max 2 --parallel 5

附加选项

  • --log -设置日志记录级别(信息、调试、警告、错误)
  • --max -要跟踪的最大页面深度(默认值:1)
  • --parallel -并发线程数(默认值:1)
  • --allowed -允许递归抓取的域(可以多次指定)

有关更多详细信息,请运行:

scpr --help

作为stdio MCP服务器

使用以下命令启动MCP服务器:

scpr mcp

并使用以下方式在代理中配置它:

{
  "mcpServers": {
    "web-scraping": {
      "type": "stdio",
      "command": "scpr",
      "args": [
        "mcp"
      ],
      "env": {}
    }
  }
}

上面的JSON片段被报告为Claude Code使用的,在使用之前请将其调整到您的代理

贡献

欢迎投稿!请阅读 贡献指南 开始吧。

许可证

该项目根据 MIT许可证