
告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度1. 先搞清楚我们要做什么Playwright MCP 是一个把浏览器自动化能力封装成 MCP 工具的服务Agent 通过它就能用自然语言指挥浏览器打开页面、定位元素、读取表格。这次的目标很具体让宿主 Agent 调用 Playwright MCP打开一个公开榜单页把页面上的表格抓下来存成 CSV并且整个过程用 TaoToken 作为默认模型供应商来驱动。适合谁如果你已经在用 Claude Code、Cursor、Cline 这类支持 MCP 的宿主工具想让 Agent 帮你做重复性的网页数据采集又不想每次都手写选择器脚本这套流程就是为你准备的。你只需要装好 Playwright MCP、把宿主的 Base URL 指向 TaoToken、选一个便宜够用的模型剩下的交给自然语言指令。我试过用 GLM 5.3 Flash 跑这类任务响应快、成本低抓表格这种结构化提取场景完全够用。下面从安装到出 CSV 一步步来。2. 安装 Playwright MCP 并验证Playwright MCP 官方提供了 npm 包直接用 npx 就能拉起不需要全局安装。先确认你的环境有 Node.js 18 以上node -v # 期望输出 v18.x 或更高然后单独跑一次 Playwright MCP 确认它能启动npx playwright/mcplatest --help如果看到 usage 信息说明包能正常拉取。第一次运行会自动下载 Chromium国内网络环境下这一步可能需要几分钟耐心等它完成。下载完成后你可以用一条最简单的命令测试浏览器能否被 MCP 控制npx playwright/mcplatest --headless --isolated--headless表示无头模式--isolated表示每次会话用干净的浏览器上下文避免残留 cookie 干扰抓取结果。这条命令会挂起等待 MCP 客户端连接按 CtrlC 退出即可。能正常挂起不报错说明 Playwright MCP 本身没问题。接下来是宿主 Agent 的配置。不同宿主的 MCP 配置文件位置不一样Claude Code 用~/.claude/claude_desktop_config.json或项目级.mcp.jsonCursor 用.cursor/mcp.jsonCline 在 VS Code 设置里。核心结构是一样的把下面这段 JSON 片段填进去{ mcpServers: { playwright: { command: npx, args: [ playwright/mcplatest, --headless, --isolated, --viewport-size, 1280,800 ] } } }--viewport-size设成 1280x800 是为了让页面按桌面布局渲染很多榜单页在窄视口下会折叠表格列导致抓取缺列。配置保存后重启宿主 Agent在工具列表里应该能看到playwright下面挂着browser_navigate、browser_snapshot、browser_evaluate等工具。3. 把宿主 Agent 接到 TaoTokenPlaywright MCP 负责浏览器模型负责理解你的指令并决定调哪个工具。这一步要把宿主的模型请求指向 TaoToken模型选 GLM 5.3 Flash。先到官网注册账号并创建 API Keyhttps://taotoken.net/?utm_sourcetaotoken_aicg_blog_generateutm_mediumcsdnutm_campaigngenerateutm_content注册后在控制台的 API Keys 页面生成一把 Key复制保存。然后回到宿主的模型配置。以 Claude Code 为例它读环境变量ANTHROPIC_BASE_URL和ANTHROPIC_API_KEYexport ANTHROPIC_BASE_URLhttps://taotoken.net/api export ANTHROPIC_API_KEYsk-你的Key如果你用的是 Cursor 或 Cline在设置里找 OpenAI Compatible 或 Anthropic Compatible 供应商Base URL 填https://taotoken.net/apiAPI Key 填刚才那把模型名填glm-5.3-flash。不同宿主对模型名的写法可能略有差异以 TaoToken 控制台模型列表里显示的为准。配置完成后做个连通性验证。在宿主里发一条简单指令用 playwright 打开 https://example.com 并告诉我页面标题如果 Agent 正确调用了browser_navigate然后返回标题说明 MCP 和模型两条链路都通了。如果报 401检查 Key 有没有多余空格如果报模型不存在回控制台核对模型名拼写。4. 一条指令抓表格存 CSV现在进入正题。假设我们要抓一个公开榜单页的表格比如某个开源项目 star 排行或者公开的统计数据页。在宿主 Agent 里输入下面这条指令用 playwright 打开 https://example.com/ranking 等待表格加载完成用 browser_evaluate 提取页面上第一个 table 的所有行把表头和每行数据整理成 CSV 格式写入当前目录的 ranking.csv然后告诉我文件路径和行数。Agent 的执行链路大致是这样先browser_navigate打开页面再browser_snapshot看页面结构确认表格位置然后browser_evaluate执行一段 JS 把 table 转成二维数组最后用文件写入工具落盘。如果页面是异步加载的你可以在指令里加一句「等表格出现再提取」Agent 会自动加等待逻辑。为了让结果更可控你可以直接给它一段提取脚本作为参考() { const table document.querySelector(table); if (!table) return NO_TABLE; const rows [...table.querySelectorAll(tr)]; return rows.map(r [...r.querySelectorAll(th,td)].map(c c.innerText.trim()) ); }Agent 调browser_evaluate时把这段传进去返回的就是干净的二维数组。然后让它转 CSV(rows) rows.map(r r.map(c ${c.replace(//g, )}).join(,) ).join(\n)CSV 前 5 行输出样例大概长这样rank,project,stars,language 1,project-alpha,48213,TypeScript 2,project-beta,39871,Python 3,project-gamma,31204,Go 4,project-delta,28765,Rust实际列名和内容取决于你抓的页面。如果表格有合并单元格或者嵌套结构提取脚本要相应调整比如用rowspan判断逻辑展开。遇到这种情况直接把页面 HTML 片段贴给 Agent让它帮你改脚本比你自己调快得多。5. 失败分支与排查抓取过程中最常见的几个坑提前说清楚省得你卡住。表格没抓到返回 NO_TABLE多半是页面用了虚拟滚动或者表格在 iframe 里。虚拟滚动的话Agent 需要先滚动到底部触发渲染再提取iframe 的话browser_evaluate默认在主文档上下文得先切 frame。你可以在指令里补一句「如果表格在 iframe 里先切到对应 frame 再提取」。CSV 列错位通常是单元格里有逗号或换行没转义。上面给的脚本已经用双引号包裹并转义了内部引号如果你自己写脚本忘了这步就会错位。检查方法是用csvlint或者直接 Excel 打开看列数是否一致。模型不调工具直接编答案有些模型会偷懒不实际打开页面就凭训练数据编一个表格。判断方法是看 Agent 的调用日志里有没有browser_navigate记录。如果没有在指令里强调「必须实际打开页面提取不要凭记忆生成」。GLM 5.3 Flash 在这类工具调用场景表现稳定基本不会跳过。请求超时或 429页面太大或者模型并发太高会触发限流。把--viewport-size调小、加--headless减少渲染开销模型侧可以降低并发或换时段重试。6. 成本、模型选择与边界这套方案的成本主要两块模型 token 和浏览器资源。GLM 5.3 Flash 属于轻量档抓一个表格的 token 消耗通常在几千以内具体价格以 TaoToken 官网和控制台实时显示为准不同时期可能有调整。浏览器侧本地跑不额外花钱但如果页面很重、要渲染大量 JSCPU 和内存占用会上去建议在配置够的机器上跑。模型选择上抓表格这种任务对推理深度要求不高Flash 档足够。如果你要处理的是多页翻页、登录后抓取、或者表格结构特别复杂需要多轮推理可以换更强的模型但成本会相应上升。具体有哪些模型可选、各自什么价位以官网模型列表为准https://taotoken.net/?utm_sourcetaotoken_aicg_blog_generateutm_mediumcsdnutm_campaigngenerateutm_content需要提醒的是抓取公开页面数据要遵守目标站点的 robots.txt 和使用条款控制请求频率别给人家服务器造成压力。涉及个人信息的页面不要抓这是底线。最后给个实用技巧把常用的抓取指令存成宿主里的自定义 prompt 模板下次换个 URL 就能复用不用每次重新描述需求。Playwright MCP 的browser_evaluate配合 TaoToken 的模型基本上能把「打开页面→提取表格→存 CSV」这条链路压缩到一条指令剩下的就是调选择器和处理边界情况了。 告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度