mcpField
C
conference-speaker-scraper

conference-speaker-scraper

github.com/gooseworks-aiマーケティング・グロース1.3k57 回インストール3 日前に更新
リポジトリ

conference-speaker-scraper について

会議の登壇者ページから氏名、役職、会社、プロフィールを抽出するコマンドラインスキルです。複数のHTML抽出方法を試し、JavaScript依存のサイトではApifyも利用できます。

主な機能

  1. 01氏名、役職、会社、プロフィールの抽出
  2. 02複数のHTML抽出方法を試行
  3. 03JavaScript依存サイトでApifyを使用
  4. 04JSON、CSV、要約で出力

活用シーン

  1. 01会議の登壇者リスト作成
  2. 02登壇者情報の連絡先調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/gooseworks-ai/goose-skills --skill conference-speaker-scraper

インストール後、Claude Code で/conference-speaker-scraperを入力して読み込まれたか確認します。

同梱ファイルscripts/scrape_speakers.pyskill.meta.json

詳細

カンファレンス登壇者スクレーパー

カンファレンスのウェブサイトにある /speakers ページから、登壇者の名前、肩書き、所属企業、略歴を抽出します。複数の抽出戦略を使った HTML の直接スクレイピングに対応し、JavaScript を多用するサイトでは Apify にフォールバックします。

クイックスタート

直接スクレイピングモードでは API キーは不要です。

# Scrape speakers from a conference page
python3 skills/conference-speaker-scraper/scripts/scrape_speakers.py \
  --url "https://example.com/speakers"

# Use Apify for JS-heavy sites
python3 skills/conference-speaker-scraper/scripts/scrape_speakers.py \
  --url "https://example.com/speakers" --mode apify

# Custom conference name (otherwise inferred from URL)
python3 skills/conference-speaker-scraper/scripts/scrape_speakers.py \
  --url "https://example.com/speakers" --conference "Sage Future 2026"

# Output formats
python3 skills/conference-speaker-scraper/scripts/scrape_speakers.py --url URL --output json     # default
python3 skills/conference-speaker-scraper/scripts/scrape_speakers.py --url URL --output csv
python3 skills/conference-speaker-scraper/scripts/scrape_speakers.py --url URL --output summary

仕組み

直接モード(デフォルト)

ページの HTML を取得し、複数の抽出戦略を順に試します。最も多くの結果を返す戦略を使用します。

  1. 戦略 A -- CSS クラスのヒント: クラス名に "speaker"、"presenter"、"faculty"、"panelist"、"team-member" を含む登壇者カードを探します
  2. 戦略 B -- 見出しと段落のパターン: 繰り返される <h2>/<h3> + <p> の構造を探します
  3. 戦略 C -- JSON-LD 構造化データ: 登壇者データを含む <script type="application/ld+json"> を確認します
  4. 戦略 D -- プラットフォームの埋め込み: 多くのカンファレンスで使われている Sched.com/Sessionize のパターンを検出します
Apify モード

一般的な登壇者カードのセレクターを対象とするカスタムページ関数と、apify/cheerio-scraper アクターを使用します。標準的な POST/ポーリング/データセット GET のパターンです。

CLI リファレンス

フラグデフォルト説明
--url必須カンファレンスの登壇者ページの URL
--conference推定カンファレンス名(指定しない場合は URL のドメインから推定)
--modedirectdirect(HTML スクレイピング)または apify(Apify の cheerio スクレーパー)
--outputjson出力形式:json、csv、または summary
--token環境変数Apify トークン(apify モードでのみ必要)
--timeout300Apify の実行に許可する最大秒数

出力スキーマ

{
  "name": "Jane Smith",
  "title": "VP of Finance",
  "company": "Acme Corp",
  "bio": "Jane leads the finance transformation at...",
  "linkedin_url": "https://linkedin.com/in/janesmith",
  "image_url": "https://...",
  "conference": "Sage Future 2026",
  "source_url": "https://sagefuture2026.com/speakers"
}

コスト

  • 直接モード: 無料(API 不要、トークン不要)
  • Apify モード: apify/cheerio-scraper を使用 -- Apify クレジットの消費は最小限です

テストに関する注意

HTML スクレイピングは、カンファレンスのサイトによって結果が不安定になりやすいものです。複数の戦略を使うことで幅広いサイトに対応できますが、JavaScript を多用するサイトでは Apify モードが必要です。直接スクレイピングで結果が 0 件の場合は、--mode apify を試してください。

コメント