ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

如何用camofox-browser批量提取页面所有链接和图片:完整教程

如何用camofox-browser批量提取页面所有链接和图片:完整教程 如何用camofox-browser批量提取页面所有链接和图片完整教程【免费下载链接】camofox-browserStealth headless browser for AI agents — bypass Cloudflare, bot detection, and anti-scraping. Drop-in Puppeteer/Playwright replacement.项目地址: https://gitcode.com/GitHub_Trending/ca/camofox-browsercamofox-browser 是一款基于 Camoufox 的隐身无头浏览器服务器stealth headless browser server通过 REST API 为 AI Agent 和爬虫脚本提供批量提取页面链接和图片的能力可绕过 Cloudflare、机器人检测和反爬机制是 Puppeteer/Playwright 的即插即用替代品。本教程将带你用 3 条 curl 命令完成整页链接与图片的批量抓取。为什么需要一款反检测浏览器来提取链接和图片传统无头浏览器在抓取真实网站时经常被拦截❌Playwright/Headless Chrome 会被指纹识别navigator.hardwareConcurrency、WebGL 渲染器、WebRTC 等特征直接暴露❌Stealth 插件本身就是指纹打补丁的 JS 层修改会留下痕迹✅camofox-browser 在 C 层修补 Firefox所有指纹在 JavaScript 运行前就被伪造网站看不到任何破绽除了反检测它还有几个对批量提取特别友好的设计特性说明 链接批量提取/tabs/:id/links支持limit/offset分页超大页面也能取完 图片批量提取/tabs/:id/images返回所有img的 src/alt/宽高可选内联 base64 数据 低内存占用惰性启动 空闲自动关闭空闲时仅约 40MB树莓派/$5 VPS 也能跑 会话隔离每个用户独立的 cookie 和存储适合多任务批量抓取快速安装3 步跑起本地服务1️⃣ 克隆仓库并安装依赖首次运行会自动下载约 300MB 的 Camoufox 引擎git clone https://gitcode.com/GitHub_Trending/ca/camofox-browser cd camofox-browser npm install2️⃣ 启动服务npm start # 服务运行在 http://localhost:93773️⃣ 验证服务访问http://localhost:9377/health看到健康响应即成功。Docker 用户可以直接用make up一条命令完成构建与启动。 自动生成的 OpenAPI 交互文档位于/docs规范文件见 openapi.json所有接口参数都能在线查阅。三步完成批量提取创建标签页 → 提链接 → 提图片整个流程只需要 3 个 API 调用无需编写任何选择器或解析代码。第 1 步创建标签页并加载目标网址curl -X POST http://localhost:9377/tabs \ -H Content-Type: application/json \ -d {userId:user1,url:https://example.com} # 返回中包含 tabId后续请求都会用到它userId用于会话隔离每个用户拥有独立的 cookie 与浏览器上下文。第 2 步批量提取页面所有链接GET /tabs/:id/links会遍历页面中所有a href元素只返回http(s)开头的真实 URL并附带链接文字截取前 100 字符curl http://localhost:9377/tabs/TAB_ID/links?userIduser1limit100offset0响应示例{ tabId: TAB_ID, total: 237, links: [ { url: https://example.com/blog/post-1, text: 第一篇博客 }, { url: https://example.com/products, text: 产品 } ] }关键参数实现见 server.js参数默认值作用limit50每页返回的链接数offset0分页偏移量配合 limit 翻页取全页面有 237 个链接循环offset0,100,200三次即可全部拿完——这就是批量的含义。第 3 步批量提取页面所有图片GET /tabs/:id/images会列出页面所有可见img元素的src、alt、宽高实现位于 lib/images.js# 只取 URL 列表默认最多 8 张上限 20 张 curl http://localhost:9377/tabs/TAB_ID/images?userIduser1limit20响应示例{ tabId: TAB_ID, images: [ { src: https://cdn.example.com/banner.jpg, alt: 首页横幅, width: 1200, height: 630 }, { src: https://cdn.example.com/logo.png, alt: Logo, width: 200, height: 200 } ] }想要把图片内容也带回来无需二次下载加上includeDatatrue接口会在浏览器内用fetch拉取图片并转成 base64 data URL超过maxBytes上限的大图会标记dataSkipped而不报错实现见 server.jscurl http://localhost:9377/tabs/TAB_ID/images?userIduser1limit10includeDatatruemaxBytes200000进阶技巧让批量提取更稳 用 accessibility snapshot 代替原始 HTML如果提取链接只是为了判断页面还有哪些页面可爬可以先调GET /tabs/:id/snapshot获取无障碍快照——它比原始 HTML 小约 90%并为每个元素生成稳定的e1、e2引用 ID还自带大页面自动截断与offset分页非常适合喂给 AI Agent 做决策。 代理 GeoIP绕过地域限制配合住宅代理和自动 locale/时区设置lib/proxy.js可以稳定抓取有地区锁或反爬严格的目标站这正是 camofox-browser 相对普通爬虫的最大优势。 用完记得关闭标签页curl -X DELETE http://localhost:9377/tabs/TAB_ID?userIduser1批量任务中为每个目标站点创建独立userId会话结束后用DELETE /sessions/:userId一次性清理可避免内存泄漏。总结需求接口关键参数批量提取链接GET /tabs/:id/linkslimit、offset分页批量提取图片GET /tabs/:id/imageslimit(≤20)、includeData、maxBytes页面结构快照GET /tabs/:id/snapshotoffset分页camofox-browser 把反检测浏览器 批量内容提取封装成了极简的 REST API三条 curl 命令就能从受 Cloudflare 保护的页面批量拿到全部链接和图片且空闲内存仅约 40MB树莓派也能跑。更多接口细节可查阅 README.md 的 API 清单与 docs/openapi.json 完整规范。【免费下载链接】camofox-browserStealth headless browser for AI agents — bypass Cloudflare, bot detection, and anti-scraping. Drop-in Puppeteer/Playwright replacement.项目地址: https://gitcode.com/GitHub_Trending/ca/camofox-browser创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表