尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

MCP与药品数据:用TaoToken统一Key打通trae+playwright+excel的药品数据采集链路

MCP与药品数据:用TaoToken统一Key打通trae+playwright+excel的药品数据采集链路 1. 药品数据采集的真实痛点与 MCP 工具链的切入点做药品数据相关工作的朋友大概率都经历过这样的场景想从公开渠道整理一批化药注册信息手动复制粘贴到 Excel字段对不齐、翻页漏数据、格式还乱七八糟。更麻烦的是每次数据源更新整套流程得重来一遍。我之前帮一个做医药情报的团队梳理过这类需求他们的核心诉求其实很朴素——把公开的药品信息自动抓下来结构化写进 Excel而且能重复跑。这就是 MCPModel Context Protocol能发挥作用的地方。MCP 本质上是一套让 AI 助手调用外部工具的协议标准你可以把它理解成给 AI 装上了手和眼睛Playwright MCP 负责打开网页、点击、翻页、读取内容Excel MCP 负责把结构化数据写进表格文件。而 trae 作为国产的 AI 编排入口可以理解自然语言指令自动调度这些 MCP 工具完成整条链路。但这里有个容易被忽略的环节AI 编排工具本身也需要一个稳定的模型 API 通道。trae 在调用模型能力时如果直连官方接口会遇到额度、并发、密钥管理等一系列问题。TaoToken 在这里扮演的角色就是统一 Key 和 API 通道——你只需要一个 Key就能让 trae 稳定地驱动整个 MCP 工具链。本文要讲的就是怎么用 TaoToken 统一 Key把 trae Playwright MCP Excel MCP Node 脚本串成一条可复现的药品数据采集链路。适合谁看有基础 Node 环境、想用 AI 工具做数据采集但不想写大量爬虫代码的开发者或者已经在用 trae 但 MCP 配置总是报错的同学。整条链路我会给出可复制的配置片段和一次端到端验证动作你跟着做就能跑通。先说清楚边界本文采集的是公开的药品注册信息页面仅用于技术学习和合规的数据整理。请科学使用技术不要用在任何违法、违规的地方。2. TaoToken 统一 Key 的前置准备与 trae 接入配置在动手配 MCP 之前得先把模型通道打通。trae 作为编排入口它需要调用大模型来理解你的自然语言指令、决定调用哪个 MCP 工具、解析返回结果。如果这一步的 API 通道不稳定后面 Playwright 抓取和 Excel 写入都会卡住。TaoToken 的核心价值就是一个 Key 走通所有模型调用。你不需要为不同模型分别申请密钥也不用担心某个通道突然限流。它的 API 地址是https://taotoken.net/api兼容 OpenAI 风格的接口格式所以 trae 这类支持自定义 Base URL 的工具可以直接接入。2.1 获取 Key 与确认模型 ID首先到 TaoToken 控制台创建一个 API Key。地址是https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentmcp_drug_data。创建后在 API Keys 页面复制你的 Key格式通常是sk-开头的一串字符。模型 ID 方面trae 里常用的编码类模型可以选择claude-sonnet-4-20250514或gpt-4o这类具体以 TaoToken 文档页列出的可用模型为准。文档地址https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentmcp_drug_data。2.2 trae 中的模型通道配置trae 支持自定义模型服务商。进入设置 → 模型配置选择自定义或OpenAI 兼容模式填入三个关键信息配置项填写内容Base URLhttps://taotoken.net/apiAPI Key你从控制台复制的sk-开头密钥Model IDclaude-sonnet-4-20250514或文档中其他可用模型这里有个细节Base URL 末尾不要加/v1TaoToken 的接口路径已经内置了兼容层。如果你填成https://taotoken.net/api/v1可能会遇到 404。我实测下来直接填https://taotoken.net/api最稳。配置完成后trae 的对话窗口应该能正常回复。你可以先发一句你好测试通道是否打通。如果报 401说明 Key 填错了或者没生效如果报连接超时检查一下网络环境是否能正常访问该地址。2.3 Node 环境确认Playwright MCP 要求 Node 18 以上。在终端执行node -v如果版本低于 18建议用 nvm 升级nvm install 20 nvm use 20Excel MCP 和 Playwright MCP 都是通过npx拉取的所以 Node 和 npm 版本要匹配。Node 20 配 npm 10 是比较稳的组合。3. 可复制的 MCP 配置片段Playwright 与 Excel 双工具接入这一节是整条链路的核心。trae 通过 MCP 配置文件来识别有哪些工具可用。你需要把 Playwright MCP 和 Excel MCP 都注册进去。3.1 MCP 配置文件位置trae 的 MCP 配置通常放在用户目录下的配置文件中。不同版本路径略有差异常见位置是Windows:C:\Users\你的用户名\.trae\mcp.jsonmacOS/Linux:~/.trae/mcp.json如果找不到可以在 trae 设置里搜索MCP查看具体路径。配置文件是 JSON 格式结构如下。3.2 完整 mcp.json 配置{ mcpServers: { playwright: { command: npx, args: [ playwright/mcplatest ] }, Excel: { command: npx, args: [ --yes, negokaz/excel-mcp-server ], env: { EXCEL_MCP_PAGING_CELLS_LIMIT: 4000 } } } }这段配置里有两个关键点。第一playwright服务用npx playwright/mcplatest启动它会自动下载最新版 Playwright MCP 服务。第二Excel服务用了negokaz/excel-mcp-server并通过环境变量EXCEL_MCP_PAGING_CELLS_LIMIT把单次读取的单元格上限设为 4000避免大数据量时内存溢出。3.3 三件套对照Base URL Key Model ID虽然 MCP 配置本身不直接写模型信息但 trae 调度 MCP 时需要模型通道。所以完整的三件套是Base URL:https://taotoken.net/apiAPI Key:sk-你的密钥Model ID:claude-sonnet-4-20250514这三项填在 trae 的模型设置里MCP 配置里只写工具启动命令。两者配合trae 才能既理解指令又调用工具。3.4 首次启动的依赖安装配置保存后重启 trae。第一次调用 MCP 工具时npx会自动下载 Playwright MCP 和 Excel MCP 的包。这个过程可能需要几十秒取决于网络速度。如果卡住不动可以手动在终端执行一次npx playwright/mcplatest --help npx --yes negokaz/excel-mcp-server --help手动跑一次能把包缓存下来后续 trae 调用就快了。Playwright 还需要下载浏览器内核首次使用时会自动触发npx playwright install chromium这一步建议提前做否则第一次抓取时会在浏览器启动环节卡很久。4. 端到端验证从 Playwright 抓取到 Excel 写入的完整动作配置就绪后来跑一次完整的验证。目标是从公开的药品信息页面抓取数据整理成 JSON再写入 Excel 文件。4.1 编排指令模板在 trae 的对话窗口输入以下指令这是自然语言trae 会解析并调度 MCP 工具请使用 Playwright MCP 帮我打开 https://www.cde.org.cn/main/xxgk/listpage/9f9c74c73e0f8f56a8bfbc646055026d 然后帮我拿到药品类型为化药2026年的所有数据整理成一个json最后使用 Excel MCP 整理成一个 cde.xlsx 文件给我这条指令包含三个动作打开页面、抓取指定条件的数据、写入 Excel。trae 会先调用 Playwright MCP 启动浏览器访问目标页面然后根据化药2026年这个条件筛选数据。4.2 Playwright 抓取过程Playwright MCP 启动后会以无头模式打开 Chromium。它会执行以下步骤导航到目标 URL等待页面加载完成定位药品类型筛选控件选择化药定位年份筛选选择2026读取表格数据翻页直到最后一页把数据整理成 JSON 结构返回给 trae这个过程在 trae 的对话里会显示工具调用日志。你能看到正在调用 playwright 工具之类的提示。如果页面结构复杂可能需要多轮交互trae 会自动处理。4.3 Excel 写入与结果确认拿到 JSON 后trae 调用 Excel MCP 创建cde.xlsx。Excel MCP 会把 JSON 的每个字段映射成列每条记录映射成行。写入完成后你可以在当前工作目录找到这个文件。用 Node 脚本快速验证一下文件内容const XLSX require(xlsx); const workbook XLSX.readFile(cde.xlsx); const sheetName workbook.SheetNames[0]; const sheet workbook.Sheets[sheetName]; const data XLSX.utils.sheet_to_json(sheet); console.log(总行数:, data.length); console.log(首行数据:, data[0]);如果输出显示行数大于 0且首行包含药品名称、类型、年份等字段说明整条链路跑通了。4.4 Node 脚本串联的补充方案如果你想把这条链路做成可重复执行的脚本可以用 Node 直接调用 MCP 服务。不过更简单的做法是把 trae 的编排指令保存成模板每次需要更新数据时改一下年份参数重新跑一遍。Excel MCP 支持追加写入模式你可以让 trae 把新数据追加到已有文件而不是每次覆盖。// 追加模式示例在 trae 指令中说明 // 请把抓取到的数据追加到 cde.xlsx 的 Sheet1 末尾不要覆盖已有内容这样就能实现增量更新适合定期采集的场景。5. 常见报错排查401、local proxy failed 与 reading choices 错误链路跑不通时报错信息往往指向不同环节。这一节对照真实错误逐一排查。5.1 401 Unauthorized这个错误几乎都出在模型通道上。trae 调用 TaoToken API 时返回 401说明 Key 无效或没带上。排查步骤检查 trae 模型设置里的 API Key 是否完整复制有没有多余空格确认 Base URL 是https://taotoken.net/api没有多加/v1到 TaoToken 控制台确认 Key 状态是否正常、额度是否充足如果 Key 刚创建稍等几秒再试有时候有缓存延迟。5.2 local proxy failed这个报错通常出现在 MCP 工具启动阶段。trae 尝试通过本地代理启动npx命令时失败。原因可能有几个Node 版本低于 18npx行为异常网络环境导致npx无法下载包配置文件路径写错trae 找不到 mcp.json解决办法先在终端手动执行npx playwright/mcplatest --help看能否正常输出。如果终端能跑通但 trae 里报错检查 mcp.json 的路径和格式是否正确。JSON 里不能有注释逗号也不能多。5.3 reading choices 错误这个错误一般发生在 Playwright MCP 解析页面数据时。当页面返回的数据结构不符合预期或者模型在解析 JSON 时读到了空值就会报reading choices之类的错误。排查方向目标页面是否改版选择器失效抓取条件是否过于复杂导致模型解析超时返回的 JSON 是否为空数组可以简化指令先只抓一页数据测试请使用 Playwright MCP 打开目标页面只抓取第一页的化药数据返回 JSON如果单页能成功再逐步增加翻页逻辑。5.4 OAuth 相关报错部分 MCP 服务需要 OAuth 授权。Playwright MCP 和 Excel MCP 本身不需要但如果你在 trae 里配置了其他需要授权的 MCP 工具可能会遇到 OAuth 回调失败。处理方式检查该 MCP 工具的文档确认是否需要预先授权。对于本文用到的两个工具不需要 OAuth所以如果看到 OAuth 报错大概率是配置了多余的 MCP 服务把它从 mcp.json 里移除即可。5.5 Excel 文件写入失败如果 Excel MCP 报写入错误检查目标文件是否被其他程序占用比如 Excel 正开着当前目录是否有写权限数据量是否超过EXCEL_MCP_PAGING_CELLS_LIMIT设置的上限把上限调大可以解决大数据量问题但注意内存消耗env: { EXCEL_MCP_PAGING_CELLS_LIMIT: 8000 }6. 让这条链路稳定跑下去模型对话验证与 Coding Plan 选择整条链路跑通一次不难难的是稳定复现。这里分享几个实操经验。第一每次改动配置后重启 trae。MCP 配置是启动时加载的改了 mcp.json 不重启不生效。我踩过的坑就是改完配置直接发指令结果一直报工具找不到重启后就好了。第二先用模型对话验证通道。在配置 MCP 之前先确保 trae 能正常调用模型。你可以到模型对话页面测试一下通道是否通畅https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentmcp_drug_data。通道没问题了再配 MCP 工具这样排查问题时能快速定位是模型层还是工具层。第三长期跑采集任务建议用 Coding Plan。如果你需要频繁执行这类编排任务按量计费可能不如包月划算。Coding Plan 适合长期编码和 Agent 场景https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentmcp_drug_data。接入文档在https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentmcp_drug_dataAPI Keys 管理在https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentmcp_drug_data。第四把编排指令模板化。不要每次手打长指令把常用的抓取指令保存成文本片段改参数就行。比如年份、药品类型这些变量单独拎出来减少模型理解成本。最后说一个细节Playwright MCP 抓取时如果目标页面有反爬机制可能会触发验证码或滑块。这种情况下不要硬刚换公开数据接口或者降低抓取频率。技术是用来提高效率的合规使用是底线。整条链路的价值在于把重复劳动自动化而不是绕过正常访问控制。
返回列表