关于 data-acquisition-specialist
面向科学研究的 Agent 数据采集技能,结合 Python 库与网页抓取获取真实数据,并以结构化文件和元数据保存。
主要功能
- 01金融、经济与机器学习数据库
- 02通过 HTTP 和 API 采集
- 03浏览器自动化回退
- 04输出 CSV、JSON 或 SQLite
- 05记录数据来源与字段说明
适用场景
- 01采集企业历史财务报告
- 02获取市场或经济数据集
- 03保存抓取数据以供后续分析
MCP 相关
遇到动态网页或 HTTP 访问受阻时,可调用 `chrome-devtools` MCP 服务进行浏览器导航和网络检查。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ lensetek/ research-agent-skills-collection --skill data-acquisition-specialist安装后在 Claude Code 中输入/data-acquisition-specialist确认已加载。
详细介绍
数据采集专家
概述
此技能负责收集并提供科学研究所需的原始数据集。此技能结合使用官方 Python 库(例如用于股票数据的 yfinance、用于 FRED/World Bank 经济数据的 pandas-datareader、用于加密货币的 ccxt,以及用于机器学习的 datasets),并使用 BeautifulSoup、Selenium、Playwright 或 Scrapy 自由编写高级网页抓取脚本,不受限制地进行抓取(unrestricted scraping)。
依赖项
- 使用标准 Python 库和第三方库进行网页抓取和数据采集。
- Agent 可以通过终端以编程方式安装缺少的 Python 依赖项。
快速开始
使用示例: “使用 data-acquisition-specialist 技能,从网页 Y 抓取公司 X 的历史财务报表数据,并保存为 CSV 格式。”
网页抓取与数据提取规则(绝对规则)
根据用户指示,Agent 在实现抓取方法时享有完全自由,并采用**双模式(混合)**策略:
- 不受限制的抓取(速度优先):优先使用轻量方法,例如官方或非官方 API,或静态 HTTP 请求(Python 中的
urllib、requests或BeautifulSoup),因为这些方法速度快得多且资源占用更少。可使用各种伪装策略,例如伪造 User-Agent,以及处理 session/cookies。 - 动态内容与机器人防护回退(稳健性优先):如果数据通过 JavaScript 动态加载、网站受到机器人防护(例如基础版 Cloudflare)或需要复杂的 UI 交互:
- 必须回退到使用 MCP 服务
chrome-devtools进行浏览器自动化。 - 零失败自动配置规则:如果
chrome-devtools尚未激活,Agent 禁止回答“not installed”。Agent 必须立即按需自动触发:npx -y chrome-devtools-mcp@latest或py bin/mcp_auto_updater.py。 - 使用
puppeteer_navigate、puppeteer_click或network_get_requests等工具,在可能的情况下动态检查网络负载,而不是粗略地解析 DOM。
- 必须回退到使用 MCP 服务
- 高级 GUI 与桌面应用回退(极端防护):如果抓取受高级验证码、桌面软件验证阻碍,或需要对特定应用的 GUI 进行自动化操作,请使用
computer-use技能(stablyai/orca@computer-use,并自动回退到视觉 AI)直接控制鼠标和键盘。 - 结构化存储:提取/抓取的数据必须整齐地保存在项目目录中,并使用结构化格式:
.csv、.json或.sqlite数据库(根据数据量选择)。 - 元数据架构:每份成功获取的数据都必须附带一个小型元数据文件(例如
[nama_dataset]_metadata.json),记录:- 来源 URL。
- 数据采集日期。
- 列/数据架构说明。
- 防止幻觉与虚构数据(致命规则):严禁使用静态代码(例如自行创建 DataFrame)制作或生成虚假的 CSV/JSON 文件。必须从目标网站/API 获取真实数据。如果访问受阻,或尝试两种模式后仍无法提取数据,请向用户报告错误并停止处理。
API 与库集成
如果以下库可用,请使用它们加快可信数据的获取:
- 金融市场:
yfinance(Yahoo Finance)、ccxt(加密货币交易所 API)。 - 经济与社会:
pandas_datareader(连接 FRED、World Bank、OECD)。 - 机器学习与 NLP:
datasets(Hugging Face Datasets)、kaggle(Kaggle API)。
工作流执行
- 识别需求:了解用户要查找的数据,或研究工作流所需的数据。
- 选择方法并执行混合路径:
- 步骤 A(HTTP/API 模式):使用 requests/BeautifulSoup 编写 Python 脚本,快速下载数据。
- 步骤 B(Chrome DevTools 回退方案):如果步骤 A 被拦截、无法渲染动态内容或触发错误页面,则通过
chrome-devtoolsMCP 操作 Chrome 浏览器,以交互方式浏览页面并提取数据。
- 编写 Python 脚本 / 自动化 DevTools:在项目文件夹中编写独立的 Python 脚本,或使用 DevTools 的可视化命令,处理从开始抓取数据到最终保存的整个流程。
- 执行并验证:运行脚本或自动化流程,然后确认生成的数据文件有效且未损坏。
- 输出:向用户说明数据文件的保存位置,并描述其列。
常见错误
- 超时设置为固定值:使用过短的固定等待时间(sleep),导致连接缓慢时抓取失败。应使用动态等待处理机制(explicit waits/DevTools dynamic load events)。
- 丢失结构:保存原始数据,却不将其转换为结构化表格格式,导致后续分析困难。
- 忽略验证码 / 保护机制:遭到拦截时直接放弃。应始终使用 Chrome DevTools MCP 回退方案模拟真实浏览器会话,然后再判定是否失败。
评论
支持 Markdown