data-acquisition-specialist について
科学研究向けのデータ収集エージェントスキルです。Pythonライブラリとウェブスクレイピングで実データを取得し、メタデータとともに構造化形式で保存します。
主な機能
- 01金融・経済・機械学習向けライブラリ
- 02HTTP・API経由の収集
- 03ブラウザー自動化へのフォールバック
- 04CSV、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を入力して読み込まれたか確認します。
詳細
データ取得スペシャリスト
概要
このスキルは、科学研究に必要な未加工データ(raw data)の収集と提供を担います。公式の Python ライブラリ(株式データ用の yfinance、FRED/World Bank の経済データ用の pandas-datareader、暗号資産用の ccxt、機械学習用の datasets など)の使用に加えて、BeautifulSoup、Selenium、Playwright、または Scrapy を使い、制限のない高度なウェブスクレイピングスクリプトを自由に作成します。
依存関係
- ウェブスクレイピングとデータ取得には、Python の標準ライブラリおよびサードパーティライブラリを使用します。
- エージェントは、必要な Python 依存関係が不足している場合、ターミナル経由でプログラムからインストールできます。
クイックスタート
使用例: 「data-acquisition-specialist スキルを使って、企業 X の過去の財務報告データをウェブページ Y から取得し、CSV 形式で保存してください。」
ウェブスクレイピングとデータ抽出のルール(絶対遵守)
ユーザーの指示に従い、エージェントには完全な自由が与えられており、**デュアルモード(ハイブリッド)**戦略を使ってスクレイピング方法を実装できます。
- 制限のないスクレイピング(速度優先):軽量な方法(公式/非公式 API、または静的 HTTP リクエスト(Python の
urllib、requests、BeautifulSoupなど))を優先してください。これらははるかに高速で、リソース消費も抑えられます。User-Agent の偽装やセッション/Cookie の処理など、あらゆる偽装手法を使用してください。 - 動的コンテンツとボット保護へのフォールバック(堅牢性優先):データが JavaScript 経由で動的に読み込まれる場合、サイトが基本的な Cloudflare などのボット保護で守られている場合、または複雑な UI 操作が必要な場合:
- MCP サーバー
chrome-devtoolsを使ったブラウザー自動化に必ず切り替えてください(フォールバック)。 - ゼロ失敗の自動プロビジョニングルール:
chrome-devtoolsが有効でない場合、エージェントは「not installed」と回答してはいけません。エージェントは必ず、オンデマンドで次のコマンドを自動実行してください:npx -y chrome-devtools-mcp@latestまたはpy bin/mcp_auto_updater.py。 - 可能な場合は、粗雑な DOM 解析をせずにネットワークペイロードを動的に調査するため、
puppeteer_navigate、puppeteer_click、network_get_requestsなどのツールを使用してください。
- MCP サーバー
- 高度な GUI とデスクトップアプリへのフォールバック(強固な保護への対応):高度な CAPTCHA、デスクトップソフトウェアの認証、または専用アプリケーションの GUI 自動化が必要なためにスクレイピングが妨げられる場合は、
computer-useスキル(自動フォールバックのビジョン AI を備えたstablyai/orca@computer-use)を活用して、マウス/キーボードを直接操作してください。 - 構造化ストレージ:抽出/スクレイピングしたデータは、プロジェクトディレクトリ内に
.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 の動的読み込みイベント)を使用してください。
- 構造の喪失:生データを構造化テーブル形式に変換せずに保存すると、その後の分析が難しくなります。
- Captcha/保護機能の無視:ブロックされた時点ですぐに諦めてしまうことです。失敗と判断する前に、必ず Chrome DevTools MCP にフォールバックして、実際のブラウザーセッションをシミュレートしてください。
コメント
Markdown 対応