Playwright Scraper Skill 是一个专为 OpenClaw(AI 智能体)设计的网页爬虫技能。它的核心能力是:用真实浏览器访问网页,模拟真人操作,绕过反爬保护机制,提取任意网页数据。
简单来说:装了这个技能,你的 OpenClaw 就从”只能回答问题”升级为“能自主上网抓数据的智能情报员”。
🤖 一、什么是 Playwright Scraper Skill?
| 痛点 | 传统方式 | 有了这个技能 |
|---|---|---|
| 网站需要 JS 渲染 | 普通爬虫抓不到 | ✅ Playwright 渲染后抓取 |
| 网站有 Cloudflare 保护 | 直接 403 / 拦截 | ✅ Stealth 隐身模式绕过 |
| 需要定时监控价格 | 每天手动查看 | ✅ 交给 AI 自动完成 |
| 抓论坛热帖/列表 | 手动复制粘贴 | ✅ 一句话搞定 |
⚡ 二、两种模式详解
🌱 Simple 简单模式
- 适用场景:普通动态网站(知乎、小红书、简书等)
- 速度:快(3~5 秒)
- 反爬能力:无
- 脚本:
scripts/playwright-simple.js
🥷 Stealth 隐身模式 ⭐推荐
- 适用场景:有反爬/Cloudflare 保护的网站(京东、淘宝等)
- 速度:中(5~20 秒)
- 反爬能力:中高
- 脚本:
scripts/playwright-stealth.js
🚀 三、在 OpenClaw 中使用(最简单)
安装好之后,在 OpenClaw 对话窗口里,直接用大白话说你要做什么,AI 会自动调用技能执行:
基础用法
"帮我抓取这个网页的关键信息:https://news.example.com/article/123"
"用 Playwright Scraper 抓取这个网址的内容"
指定模式
"切换 stealth 隐身模式,帮我抓取京东这个商品的价格:https://item.jd.com/123456.html"
"用 playwright-simple 模式抓取知乎这个帖子的标题和内容"
💡 提示:OpenClaw 会自动分析目标网站,选择合适的模式。如果普通模式失败,它会自动尝试 Stealth 模式。
💻 四、直接用命令行(进阶用法)
技能安装在:C:\Users\Administrator\.openclaw\workspace\skills\playwright-scraper-skill
① 简单模式(普通动态网站)
# 切换到技能目录
cd C:\Users\Administrator\.openclaw\workspace\skills\playwright-scraper-skill
# 执行爬取
node scripts/playwright-simple.js https://example.com
② 隐身模式(反爬网站)⭐ 推荐
node scripts/playwright-stealth.js "https://m.discuss.com.hk/#hot"
参数自定义
| 参数 | 说明 | 示例 |
|---|---|---|
HEADLESS=false | 显示浏览器窗口(调试用) | HEADLESS=false node scripts/...js URL |
WAIT_TIME=10000 | 等待时间(毫秒),适合加载慢的网站 | WAIT_TIME=15000 node scripts/...js URL |
SAVE_HTML=true | 保存完整 HTML 文件到本地 | SAVE_HTML=true node scripts/...js URL |
SCREENSHOT_PATH=... | 指定截图保存路径 | SCREENSHOT_PATH=./a.png node scripts/...js URL |
实战命令示例
# 1. 爬取京东商品(含等待时间,让页面充分加载)
WAIT_TIME=10000 node scripts/playwright-stealth.js "https://item.jd.com/100000.html"
# 2. 调试模式:显示浏览器,实时看操作过程
HEADLESS=false node scripts/playwright-stealth.js "https://example.com"
# 3. 抓取 + 同时保存截图和 HTML(方便检查)
SAVE_HTML=true SCREENSHOT_PATH=./result.png node scripts/playwright-stealth.js "https://example.com"
# 4. 应对 Cloudflare:增加等待时间 + 有头模式
HEADLESS=false WAIT_TIME=30000 node scripts/playwright-stealth.js "https://example.com"
🎯 五、典型应用场景
- 🛒 电商价格监控:抓取京东、淘宝、拼多多的商品价格,每天自动比价
- 💼 招聘数据采集:抓取 Boss直聘、猎聘的岗位薪资信息,批量整理成表格
- 📋 论坛热帖追踪:抓取知乎、小红书、V2EX 的热帖标题,追踪热点话题
- 📰 新闻资讯聚合:每日热点速递,自动整理成资讯报告
- 🏠 二手房/租房信息:批量采集房源价格,筛选性价比最高的房源
- 🎮 游戏道具/虚拟资产:监控 Steam 商品价格走势,低买高卖
🛡️ 六、隐身模式反爬原理
有效的反爬技术 ✅
| 技术 | 说明 |
|---|---|
| 隐藏 navigator.webdriver | 大多数网站通过检测这个属性判断是否为机器人,Playwright 默认暴露它,Stealth 模式把它隐藏 |
| 真实 User-Agent | 使用 iPhone/Android 等真实设备的浏览器标识,而非爬虫特征 |
| 模拟人类行为 | 随机延迟、滚动等,模仿真人在浏览网页 |
| addInitScript 注入 | 在页面加载前注入脚本,抹除自动化痕迹 |
📊 七、各网站实测成功率
| 网站 | 简单模式 | Stealth 模式 | 备注 |
|---|---|---|---|
| 香港讨论区 discuss.com.hk | ~20% | 100% ✅ | 有 Cloudflare 保护 |
| 知乎 | ✅ 成功 | ✅ 成功 | 需要 JS 渲染 |
| 小红书 | ✅ 成功 | ✅ 成功 | 动态加载 |
| 京东 | ⚠️ 部分 | ✅ 成功 | 强反爬保护 |
| 淘宝 | ⚠️ 部分 | ✅ 成功 | 需等待加载 |
| Boss直聘 | ⚠️ 部分 | ✅ 成功 | 动态列表加载 |
❓ 八、常见问题
Q1: 出现 403 Forbidden 错误?
说明网站有反爬保护。解决方法:使用 Stealth 隐身模式。
Q2: 出现 Cloudflare 验证页面?
增加等待时间 + 有头模式:
HEADLESS=false WAIT_TIME=30000 node scripts/playwright-stealth.js "URL"
Q3: 页面空白/内容不完整?
页面需要更多时间加载。增加等待时间:
WAIT_TIME=20000 node scripts/playwright-stealth.js "URL"
Q4: 需要登录的网站能抓吗?
目前版本暂不支持自动登录。变通方法:先在浏览器手动登录,导出 cookies 后使用(高级用法)。
Q5: 会被封 IP 吗?
- 两次请求之间间隔 5~10 秒
- 使用 Stealth 模式降低被识别概率
- 不要高频连续抓取同一个网站
⚠️ 九、安全使用建议
⚠️ 重要提醒:该技能涉及反爬技术,请务必遵守相关法律法规,只用于个人学习研究,不得用于商业爬取。
- ✅ 只用于个人学习研究,不得用于商业爬取
- ✅ 遵守目标网站的 robots.txt 协议
- ✅ 遵守《网络安全法》等相关法律法规
- ✅ 控制抓取频率,尊重网站服务器资源
- ✅ 不得抓取个人信息、隐私数据
📌 十、快速参考
# 技能安装路径
C:\Users\Administrator\.openclaw\workspace\skills\playwright-scraper-skill
# 快速使用(OpenClaw 对话窗口)
"帮我抓取这个网页的信息:[URL]"
# 命令行基础
node scripts/playwright-simple.js URL # 简单网站
node scripts/playwright-stealth.js URL # 反爬网站 ⭐
# 常用参数
HEADLESS=false # 显示浏览器窗口
WAIT_TIME=15000 # 等待15秒加载
SAVE_HTML=true # 保存HTML文件
本教程基于 Playwright Scraper Skill v1.2.0 整理 · 如有问题,可参考技能目录下的 SKILL.md 或 README_ZH.md
评论