webclaw自托管REST API完整参考:10个端点+Firecrawl兼容接口,本地部署秒变抓取服务 webclaw自托管REST API完整参考10个端点Firecrawl兼容接口本地部署秒变抓取服务【免费下载链接】webclawFast, local-first web content extraction for LLMs. Scrape, crawl, extract structured data — all from Rust. CLI, REST API, and MCP server.项目地址: https://gitcode.com/gh_mirrors/web/webclawwebclaw 是一款 Rust 编写的本地优先网页内容提取工具把网址变成干净的 Markdown、JSON 和 LLM 可用上下文。它的开源仓库自带一个无状态单二进制服务webclaw-server一条 Docker 命令就能在你自己的机器上跑起webclaw 自托管 REST API——10 个核心端点覆盖抓取、爬取、站点地图、批量、搜索、LLM 提取、摘要、Diff 和品牌资产并且 JSON 结构与托管版对齐天然具备Firecrawl 兼容接口的迁移友好性。为什么选择自托管抓取服务在了解端点之前先明确这个服务是什么、不是什么参考 crates/webclaw-server/src/main.rs 的官方定位它是CLI、MCP server 同款提取引擎的 HTTP 封装——单二进制、无数据库、无任务队列开箱即用。它不是反爬绕过、JS 渲染、异步任务、多租户计费——这些属于闭源托管能力开源版刻意不做。对新手来说最大的好处是内容在本地处理数据不出内网零 API Key 即可使用核心提取能力。一键安装3 步跑通 webclaw 抓取服务第 1 步启动容器docker run --rm -p 3000:3000 \ -e WEBCLAW_API_KEYyour-secret-key \ ghcr.io/0xmassi/webclaw webclaw-server⚠️ 官方镜像默认绑定0.0.0.0此时必须设置WEBCLAW_API_KEY否则进程会拒绝启动见 Dockerfile 中的安全设计。仅本机调试可不设 Key走开放模式。第 2 步健康检查curl http://127.0.0.1:3000/health # {status:ok,version:x.x.x,service:webclaw-server}第 3 步发起第一次抓取curl -X POST http://127.0.0.1:3000/v1/scrape \ -H Authorization: Bearer your-secret-key \ -H Content-Type: application/json \ -d {url: https://example.com, formats: [markdown]}返回 JSON 中即包含markdown、metadata字段。所有/v1/*路由统一使用 Bearer Token 鉴权auth.rs/health无需鉴权方便挂载探针。10 个核心端点速查表#端点方法功能1/healthGET健康检查2/v1/scrapePOST单页抓取多格式输出3/v1/scrape/{vertical}POST行业垂直结构化提取配套GET /v1/extractors查目录4/v1/crawlPOST同步 BFS 爬取5/v1/mapPOST站点地图 URL 发现6/v1/batchPOST批量并行抓取支持流式7/v1/searchPOST网络搜索 结果页抓取8/v1/extractPOSTLLM 结构化数据提取9/v1/summarizePOSTLLM 页面摘要10/v1/diffPOST页面内容快照对比另有彩蛋端点POST /v1/brand纯 DOM/CSS 分析提取站点品牌色、字体和 Logo不耗 LLMbrand.rs。端点详解每个接口怎么调单页抓取POST /v1/scrape最常用的端点。支持markdown/text/llm/json/html五种格式默认 markdown并可精细控制提取范围scrape.rs{ url: https://docs.example.com/guide, formats: [markdown, json], only_main_content: true, exclude_selectors: [nav, footer, .ad] }only_main_content: true是 RAG 场景的利器——只保留正文去掉导航、广告和样板代码。若 URL 命中内置垂直站点还会自动附带structured_data字段。行业提取器POST /v1/scrape/{vertical}内置约 30 个站点级解析器Reddit、GitHub、Hacker News、PyPI、npm、arXiv、YouTube、Shopify、StackOverflow 等目录见 extractors/mod.rs直接返回类型化 JSON而非通用 Markdowncurl -X POST .../v1/scrape/reddit -d {url: https://reddit.com/r/rust/comments/...}不确定支持哪些站点先调GET /v1/extractors拿到完整目录客户端可按name字段选择对应路由。批量与爬取POST /v1/batch和POST /v1/crawl批量抓取无数量上限大列表建议开启流式模式结果按完成顺序逐行输出 NDJSONbatch.rs{urls: [https://a.com, https://b.com], concurrency: 5, stream: true}爬取是同步 BFS——请求返回时结果已经完整无任务队列。关键参数max_depth默认 3、max_pages默认 500表示不限量、use_sitemap、concurrency上限 20、include_patterns/exclude_patternscrawl.rs。站点地图发现POST /v1/map不逐页抓取只解析 robots.txt 和 sitemap含递归sitemapindex秒级返回全站 URL 列表——爬取前用它做侦察最划算map.rs。设include_metadata: true可拿到 lastmod、priority 等完整条目。搜索端点POST /v1/search自托管版通过 Serper.dev 提供搜索能力需设置SERPER_API_KEY环境变量启用未配置时返回 501 提示search.rs{query: tokio tutorial, num_results: 5, scrape: true}scrape: true会把每条结果页也提取成 Markdown单条结果抓取失败不影响整体返回。LLM 端点POST /v1/extract与POST /v1/summarize这两个端点把抓取升级为理解。/v1/extract支持两种模式extract.rsschema 模式传 JSON Schema返回严格符合结构的 JSONprompt 模式传一句自然语言指令即可。服务端会先把页面转成干净 Markdown 再喂给 LLM——token 更省、信号更准。/v1/summarize则直接返回页面摘要可用max_sentences控制长度。Provider 按Ollama → OpenAI → Anthropic链式回退本地 Ollama 零成本即可用。所有配置项含 Ollama 地址、各 Provider Key、代理池都集中在 env.example复制为.env按需填写即可。变更追踪POST /v1/diff传入url加旧快照/v1/scrape的返回结构即可直接复用服务端重新抓取并输出内容差异——竞品定价页监控、文档变更告警这类场景开箱即用diff.rs。Firecrawl 兼容接口迁移只要改一行配置这是 webclaw 自托管 API 的一个隐藏福利/v1所有响应的 JSON 结构刻意与托管版对齐scrape.rs 注释 明确写到从自托管迁移到云只是配置变更而非代码变更。托管版还额外提供Firecrawl 兼容的 v2 路由——/v2/scrape、/v2/crawl、/v2/map、/v2/search的参数和返回形态对齐 Firecrawl 习惯如limit、maxDepth已有 Firecrawl 调用代码的团队几乎可以平移过来详见 examples/firecrawl-compatible-api/README.md。 官方建议新项目优先使用原生/v1API能更直接地用上 webclaw 独有的formats、vertical等能力。生产部署与配置清单常用环境变量变量作用WEBCLAW_PORT监听端口默认 3000WEBCLAW_HOST绑定地址默认 127.0.0.1WEBCLAW_API_KEYBearer Token对公网暴露时必填OLLAMA_HOST本地 LLM供 extract/summarize 使用SERPER_API_KEY启用 /v1/searchWEBCLAW_PROXY/WEBCLAW_PROXY_FILE单个代理或代理池文件格式参考 proxies.example.txtDocker Compose 一键组合 Ollama想要抓取 本地 LLM 提取全链路离线docker-compose.yml 已预置 webclaw 与 Ollama 的编排docker compose up后在容器里ollama pull一个模型即可。三条生产建议公网暴露务必加 Key服务对0.0.0.0无鉴权绑定会直接拒绝启动这是防误配置的安全阀。反代收紧 CORS自托管版默认开放 CORS定位为开发工具对公网部署请在前置反代上收紧。大爬取任务量力而行服务是无状态的crawl 结果整体在内存中组装后同步返回。超大规模爬取建议限制max_pages或使用托管版异步任务。源码导航想深入了解去哪里看路由注册与启动参数crates/webclaw-server/src/main.rs全部端点实现crates/webclaw-server/src/routes/30 垂直提取器目录crates/webclaw-fetch/src/extractors/mod.rs环境变量模板env.exampleFirecrawl 兼容示例examples/firecrawl-compatible-api/README.mdRAG 工作流示例examples/html-to-markdown-rag/README.md小结webclaw 自托管 REST API 用一个二进制 10 个端点覆盖了从单页抓取到 LLM 结构化提取的完整链路scrape出干净内容crawl/map/batch管规模extract/summarize接 LLMdiff/brand补监控与品牌情报再加一层 Firecrawl 兼容的迁移友好设计。对于想把网页数据接进 RAG 管线、AI Agent 或自动化流程的团队它就是一个本地部署秒变抓取服务的务实选择。【免费下载链接】webclawFast, local-first web content extraction for LLMs. Scrape, crawl, extract structured data — all from Rust. CLI, REST API, and MCP server.项目地址: https://gitcode.com/gh_mirrors/web/webclaw创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考