workbuddy网页抓取失败主因是playwright连接器配置错误:mcp服务未启动、端口被占或运行时缺失。需依次验证mcp健康状态(curl http://localhost:3001/health)、运行npm start、执行npx playwright install chromium(可配镜像源)、检查并释放3001端口、最后用最小脚本测试page对象可用性。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

WorkBuddy网页抓取失败,往往不是目标网站反爬导致,而是Playwright浏览器自动化连接器未正确配置——MCP服务未启动、端口被占、或Playwright运行时缺失都会让“打开页面→定位元素→提取文本”整条链路在第一步就中断。
确认Playwright MCP服务已就绪
WorkBuddy依赖本地MCP Server作为Playwright的控制中枢,若该服务未运行,所有浏览器指令都会返回“Connection refused”。
打开终端(Windows PowerShell / macOS/Linux Terminal),执行:curl -s http://localhost:3001/health | grep status。
若返回{"status":"ok"},说明MCP Server正常;若报错Failed to connect或超时,则服务未启动。
进入WorkBuddy安装目录下的connectors/playwright子文件夹,运行npm start(需提前npm install)。这一步必须完成,【否则WorkBuddy完全无法向浏览器发送任何指令】。
检查Playwright运行时是否安装完整
Playwright需要独立下载对应浏览器二进制(Chromium/Firefox/WebKit),仅靠npm install playwright不会自动拉取——这是最常被跳过的致命步骤。
在connectors/playwright目录下,执行:npx playwright install chromium。
国内网络可能卡在下载阶段,此时改用镜像源:先设置环境变量PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors,再执行安装命令。
安装完成后,运行npx playwright test --browser=chromium验证。若看到测试页打开又关闭,说明运行时可用;若报Executable doesn't exist,说明上一步没生效。
排查端口与进程冲突
Playwright MCP默认监听3001端口,Claw网关监听3002端口。任一端口被占,WorkBuddy就收不到浏览器返回的数据。
方法一:Windows用户执行:netstat -ano | findstr :3001 → 记下PID → tasklist | findstr "PID",确认占用进程非node.exe或playwright。
方法二:macOS/Linux用户执行:lsof -i :3001 → 若有输出,执行kill -9 PID释放端口。
注意:杀掉进程后,必须重新启动npm start,否则MCP服务仍处于断连状态。
验证WorkBuddy能否真正驱动浏览器
第一步:在WorkBuddy控制台新建一个空任务,选择“Playwright脚本”类型。
第二步:粘贴以下最小可运行代码:
await page.goto('https://httpbin.org/html');const title = await page.textContent('h1');console.log('抓取标题:', title);
第三步:点击“测试运行”,观察控制台输出。若显示抓取标题: Hypertext Markup Language,说明Playwright连接器已通;若报page is not defined或超时,说明MCP未注入上下文,需回看第一阶段健康检查。











