关于 conference-speaker-scraper
这款命令行技能从会议演讲者页面提取姓名、职位、公司和简介,适用于活动调研与联络。它组合多种 HTML 提取方式,并可通过 Apify 处理依赖 JavaScript 的网站。
主要功能
- 01提取姓名、职位、公司和简介
- 02尝试多种 HTML 提取策略
- 03通过 Apify 处理 JavaScript 网站
- 04导出 JSON、CSV 或摘要
适用场景
- 01整理会议演讲者名单
- 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;对于大量依赖 JS 的网站,也可回退到 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,并按顺序尝试多种提取策略,使用返回结果最多的策略:
- 策略 A —— CSS 类提示: 查找类名包含 "speaker"、"presenter"、"faculty"、"panelist"、"team-member" 的演讲者卡片
- 策略 B —— 标题 + 段落模式: 查找重复出现的
<h2>/<h3>+<p>结构 - 策略 C —— JSON-LD 结构化数据: 检查是否存在包含演讲者数据的
<script type="application/ld+json"> - 策略 D —— 平台嵌入内容: 检测许多会议使用的 Sched.com/Sessionize 模式
Apify 模式
使用 apify/cheerio-scraper actor,并通过自定义页面函数定位常见的演讲者卡片选择器。采用标准的 POST/轮询/GET 数据集模式。
CLI 参考
| 标志 | 默认值 | 说明 |
|---|---|---|
--url | 必填 | 会议演讲者页面 URL |
--conference | 推断 | 会议名称(否则根据 URL 域名推断) |
--mode | direct | direct(HTML 抓取)或 apify(Apify cheerio scraper) |
--output | json | 输出格式:json、csv 或 summary |
--token | 环境变量 | Apify 令牌(仅 apify 模式需要) |
--timeout | 300 | Apify 运行的最长秒数 |
输出架构
{
"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 抓取方式本质上较为脆弱。多策略方法可最大限度地提高覆盖率,但大量依赖 JS 的网站需要使用 Apify 模式。直接抓取返回 0 条结果时,请尝试 --mode apify。
评论
支持 Markdown