Playwright Scraper

🕷️ 隐匿式动态网页抓取引擎

基于 Playwright Stealth 的高性能网页抓取工具,可绕过反爬虫机制,支持动态渲染网站,适合需要匿名数据采集的开发者场景。

收藏
15.9k
安装
3.9k
版本
1.0.0
CLS 安全性认证2026-05-03
点击查看完整报告 >

使用说明

核心用法

Playwright Stealth Scraper 是一个集成 puppeteer-extra-plugin-stealth 的 MCP 技能,通过 Playwright 浏览器自动化框架实现隐蔽式网页抓取。用户调用 stealth_scrape 工具并传入目标 URL,即可在绕过常见反 bot 检测的同时获取完整渲染后的页面内容。

显著优点

1. 反检测能力强:Stealth 插件通过修改浏览器指纹(如 navigator.webdriver 属性、插件列表、WebGL 特征等)显著降低被识别为自动化工具的概率
2. 动态内容支持:完整执行 JavaScript,可抓取 React、Vue 等 SPA 单页应用的内容,突破静态爬虫的限制

3. 配置灵活性:支持自定义视口尺寸和 User-Agent,便于模拟不同设备和浏览器环境

4. 生态成熟:基于 Playwright 和 Puppeteer Extra 生态,社区方案经过广泛验证

潜在缺点与局限性

  • 依赖体积大:需安装完整 Chromium 浏览器,占用存储空间较大
  • 资源消耗高:相比纯 HTTP 请求方案(如 requests + BeautifulSoup),内存和 CPU 开销显著增加
  • 非完全隐形:高级反爬虫服务(如 Cloudflare、DataDome、PerimeterX)仍可能通过行为分析、TLS 指纹、鼠标轨迹等维度检测
  • 法律与合规风险:隐蔽抓取可能违反目标网站的 ToS,且 Stealth 特性在司法实践中可能被认定为"规避技术措施"
  • 维护成本:浏览器版本更新可能导致 stealth 插件失效,需持续跟进

适合人群

  • 需要抓取 JavaScript 渲染内容的开发者
  • 从事公开数据聚合、竞品监控、价格追踪等场景的技术团队
  • 具备一定法律合规评估能力,能判断目标网站 robots.txt 和使用条款限制的用户

常规风险

| 风险类型 | 说明 |
|---------|------|
| 账号/ IP 封禁 | 高频请求仍可能触发风控,需配合代理池和请求频率控制 |
| 法律诉讼 | 抓取受保护数据(如社交媒体非公开内容)可能面临平台诉讼 |
| 数据准确性 | 动态网站结构变更会导致选择器失效,需建立监控机制 |
| 供应链安全 | `puppeteer-extra` 及依赖插件需审计,防范恶意代码注入 |

安全解读

核心用法

Playwright Stealth Scraper 是一款专为 OpenClaw 设计的 MCP 技能,通过 Playwright Extra 和 Stealth 插件实现对现代网站的高性能抓取。其核心工具 stealth_scrape 接收目标 URL 参数,利用 puppeteer-extra-plugin-stealth 模拟真实浏览器行为,有效绕过基于指纹检测的反爬虫机制。

该技能支持完整的 JavaScript 执行环境,能够抓取 React、Vue、Angular 等单页应用(SPA)的动态渲染内容。用户可自定义视口大小和 User-Agent 参数,灵活适配不同设备的访问场景。技术实现上,通过 child_process.execSync 调用独立的 Playwright 脚本完成实际抓取任务。

显著优点

1. 反检测能力强:Stealth 插件覆盖 WebDriver 属性、插件列表、Canvas/WebGL 指纹等 20 余项浏览器特征,显著降低被 Cloudflare、DataDome 等防护系统拦截的概率
2. 动态内容完整支持:相比传统 HTTP 请求库,Playwright 能执行页面 JavaScript,获取 AJAX 加载后的完整 DOM

3. 架构轻量:代码仅 37 行,依赖精简,部署和维护成本低

4. 网络行为透明:仅向用户指定的 URL 发起请求,无第三方 API 调用或数据外发行为

潜在缺点与局限性

1. 命令注入风险:第 29 行使用 execSync 拼接 URL 参数,未过滤 shell 元字符(;&&|$() 等),存在中等严重程度的命令执行漏洞
2. 输入验证缺失:未验证 URL 格式、协议类型(可能接受 file://、ftp:// 等),缺乏 SSRF 防护(未过滤 localhost、192.168.x.x 等内网地址)

3. T3 级别来源:维护者为匿名个人开发者,无企业背书,代码未经过社区广泛审查

4. 隐私政策空白:SKILL.md 未声明数据处理方式,虽实际不收集敏感信息,但合规性存在瑕疵

5. 依赖外部 Chromium:需要本地安装浏览器环境,首次部署配置较复杂

适合人群

  • 需要从受保护网站抓取公开数据的开发者
  • 进行价格监控、舆情分析等合法数据收集的研究人员
  • 已有 Node.js 运维经验、能自行审查代码的技术用户

不建议使用场景:处理敏感内网资源、高安全要求的企业生产环境、缺乏技术能力验证代码安全性的普通用户。

常规风险

| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 命令注入 | 恶意 URL 可能导致系统命令执行 | 使用 `execFileSync` 替代,严格过滤输入 |
| SSRF | 可能访问内部网络服务 | 添加内网地址黑名单验证 |
| 供应链攻击 | T3 来源存在维护者作恶可能 | 审查代码后锁定依赖版本 |
| 法律合规 | 抓取受保护网站可能违反服务条款 | 确保目标允许爬取,遵守 robots.txt |

Playwright Scraper 内容

手动下载zip · 16.5 kB
index.jstext/javascript
请选择文件