用途 data-base 用于网页抓取与数据采集。它的核心目标是把非结构化的网页内容转换成结构化数据,并输出为 JSON 或 CSV,供后续分析使用。当用户提出“爬取数据/抓取网页/scrape data”这类需求时适用。
主要能力与工具选择 该技能建议根据页面复杂度选择工具:
- 动态页面(JS 渲染、单页应用):使用 chrome-devtools MCP,适用于 React/Vue 应用、无限滚动、登录门槛等场景。
- 静态 HTML:使用 Python requests,适用于博客、新闻站点、简单页面。
- 复杂或可复用逻辑:使用 Python 脚本,适用于多步骤抓取、限速、代理等场景。
输出格式
- JSON:用于嵌套或层级化数据。
- CSV:用于表格型数据。
- 文件命名:{source}_{timestamp}.{ext},仅使用 ASCII 字符,例如 news_20250115.csv。
使用方式 工作流程为:先询问要抓取什么数据、哪些站点、抓取多少;再根据页面类型选择工具;随后抽取并保存结构化数据;最后将文件路径交付用户,或传递给 data-analysis。
Python 环境会在需要时自动初始化虚拟环境,然后执行脚本:进入 skills/data-base 目录,如果不存在 .venv/bin/python 则运行 ./setup.sh 创建环境,之后使用 .venv/bin/python 运行脚本。setup.sh 会自动安装 requests、beautifulsoup4、pandas 以及网页抓取工具。
行为规范与限制 该技能列出了明确的反模式(禁止事项):不要在未检查 robots.txt 的情况下抓取;不要给服务器造成过大负载(默认约 1 请求/秒);不要在未经同意的情况下抓取个人数据;输出文件名不要使用中文字符(仅用 ASCII);不要忘记通过 User-Agent 标明机器人身份。
参考资料 如需详细 API 与模板,可按需加载 references/REFERENCE.md 和 references/templates.md。