关于 earningswhispers
earningswhispers 是从 EarningsWhispers 获取公司财报电话会议文字稿的技能,面向分析上市公司业绩的用户。它提供 CLI 和 Python 客户端,可读取最新文字稿的陈述与问答;API 不提供历史文字稿。
主要功能
- 01按股票代码获取最新文字稿
- 02提取公司、日期和季度信息
- 03读取陈述与问答内容
- 04通过 CLI 批量查询股票代码
- 05使用本地缓存并可强制刷新
适用场景
- 01梳理公司财报电话会议内容
- 02查阅管理层陈述和问答
- 03批量检查多个公司的最新文字稿
- 04将文字稿字段用于后续分析
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ gauss314/ skills --skill earningswhispers安装后在 Claude Code 中输入/earningswhispers确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/REFERENCES.mdscripts/ew_cli.pyew_client.py详细介绍
EarningsWhispers — Earnings Transcripts API(全球覆盖)
用于通过 EarningsWhispers 的公开 API提取完整的 earnings transcripts。
与 Seeking Alpha 不同,该网站提供开放的公开 API,无需身份验证、没有反机器人机制,也没有严格的速率限制。Transcripts 包含 earnings calls 的完整文本,包括参与者、准备好的发言和问答环节。
API 端点
GET https://www.earningswhispers.com/api/conferencecalls?t={TICKER}
| 参数 | 类型 | 描述 |
|---|---|---|
t | string(必填) | 股票代码(AAPL、MSFT、GGAL、SHEL……) |
ccid | int | conference call 的内部 ID(可选,不支持历史记录) |
响应: JSON 数组。如果该股票代码存在,数组中会包含 1 个对象,即最新的 transcript。如果不存在,则返回空数组。
Respuesta tipica (~50 KB para GGAL, ~90 KB para AAPL):
[{
"ccid": 132,
"ticker": "GGAL",
"company": "Grupo Financiero Galicia S.A.",
"ccDate": "2026-05-14T11:00:00",
"ccYear": 2026,
"ccQtr": 1,
"speakers": "JSON string con array de speakers",
"speakerMap": "JSON string con mapping de nombres y cargos",
"summary": null,
"aiSummary": null,
"status": ""
}]
实际覆盖范围
EarningsWhispers 在其平台上追踪全球约 33,500 多只股票。其中有相当一部分可通过 API 获取完整的 earnings transcripts。
哪些公司有 transcripts?
任何进行earnings conference calls的上市公司都可能有 transcript。实际情况如下:
- 大型股:几乎全面覆盖(AAPL、MSFT、JPM、SHEL、TM……)
- 中型股:覆盖率高(大多数都有 transcripts)
- 小型股:部分覆盖(取决于是否举行公开电话会议)
- ADR:阿根廷、巴西、墨西哥等地的 ADR 覆盖率较高……
- ETF、基金、债券:不覆盖(不会举行 earnings calls)
如何确认某个股票代码是否有 transcript?
只需试用 API:
# Si devuelve datos, tiene transcript
curl "https://www.earningswhispers.com/api/conferencecalls?t=AAPL"
# Si devuelve [] (array vacio), no tiene transcript
curl "https://www.earningswhispers.com/api/conferencecalls?t=XXXX"
截至 2026-05-30 各地区示例
美国 — 覆盖范围广(任何举行 earnings calls 的美国上市公司):
| 股票代码 | 公司 | Transcript |
|---|---|---|
| AAPL | Apple Inc. | ✅ Q2 2026 |
| MSFT | Microsoft Corp. | ✅ Q3 2026 |
| GOOG | Alphabet Inc. | ✅ Q1 2026 |
| AMZN | Amazon.com, Inc. | ✅ Q1 2026 |
| META | Meta Platforms, Inc. | ✅ Q1 2026 |
| NVDA | NVIDIA Corp. | ✅ Q1 2027 |
| TSLA | Tesla, Inc. | ✅ Q1 2026 |
| JPM | JPMorgan Chase & Co. | ✅ |
| V | Visa Inc. | ✅ |
| WMT | Walmart Inc. | ✅ |
| DIS | Walt Disney Co. | ✅ |
| NKE | Nike Inc. | ✅ |
| XOM | Exxon Mobil Corp. | ✅ |
| UNH | UnitedHealth Group | ✅ |
| PFE | Pfizer, Inc. | ✅ |
| DAL | Delta Air Lines | ✅ |
| COIN | Coinbase Global | ✅ |
欧洲:
| 股票代码 | 公司 | Transcript |
|---|---|---|
| SHEL | Shell plc | ✅ |
| BP | BP p.l.c. | ✅ |
| TTE | TotalEnergies SE | ✅ |
| HSBC | HSBC Holdings | ✅ |
| BBVA | BBVA | ✅ |
亚洲:
| 股票代码 | 公司 | Transcript |
|---|---|---|
| TM | Toyota Motor Corp. | ✅ |
| HMC | Honda Motor Co. | ✅ |
| BABA | Alibaba Group | ✅ |
| JD | JD.com, Inc. | ✅ |
| TCEHY | Tencent Holdings | ✅ |
| INFY | Infosys Technologies | ✅ |
拉丁美洲:
| 股票代码 | 公司 | Transcript |
|---|---|---|
| ITUB | Itau Unibanco | ✅ |
| BBD | Banco Bradesco | ✅ |
| VALE | Vale S.A. | ✅ |
| AMX | America Movil | ✅ |
| FMX | Fomento Economico Mexicano | ✅ |
| SBS | Cia de Saneamento | ✅ |
| WMMVY | Walmart Mexico | ✅ |
阿根廷:
| 股票代码 | 公司 | Transcript |
|---|---|---|
| GGAL | Grupo Financiero Galicia | ✅ Q1 2026 |
| YPF | YPF S.A. | ✅ Q1 2026 |
| TGS | Transportadora de Gas | ✅ Q1 2026 |
| PAM | Pampa Energia | ✅ Q4 2025 |
| BMA | Banco Macro | ✅ |
无法使用的股票代码
某些股票代码可能没有 transcript,原因如下:
| 原因 | 示例 |
|---|---|
| 不举行 earnings calls | ETF(SPY、QQQ、ARKK)、债券 |
| 股票代码不正确 | GOOGL -> GOOG、WALMEX -> WMMVY |
| 数据库中未收录 | 部分小型股 |
| 公司破产/合并 | SBNY、FRC |
股票代码说明
- GOOGL 无法使用,请改用 GOOG(Alphabet)
- WALMEX 无法使用,请改用 WMMVY(Walmart Mexico)
- SNE(Sony 的旧股票代码)已不再使用,SONY 也未收录
- 数据库中不存在的股票代码会返回
[](空数组)
安装
python -c "from curl_cffi import requests; print('OK')"
依赖项:curl_cffi(已在环境中可用)。
脚本
| 脚本 | 描述 |
|---|---|
| ew_client.py | 集成 CLI 的完整客户端 |
| ew_cli.py | CLI 封装器 |
快速使用
CLI
# Cualquier ticker global
python ew_cli.py get AAPL
python ew_cli.py get SHEL --json
python ew_cli.py batch MSFT,GOOG,AMZN --json
python ew_cli.py info GGAL
# Lista de tickers de ejemplo
python ew_cli.py list
在 Python 中使用
from ew_client import EarningsWhispersClient
client = EarningsWhispersClient()
# Transcript de cualquier empresa global
tr = client.get_transcript("AAPL")
print(tr.company) # "Apple, Inc."
print(tr.prepared_remarks[:500])
# Como dict (para JSON)
data = tr.to_dict()
# Batch
results = client.get_transcripts_batch(["MSFT", "GOOG", "AMZN"])
Transcript 的关键字段
tr = client.get_transcript("NVDA")
tr.company # "NVIDIA Corp."
tr.date # "2026-05-20T16:30:00"
tr.quarter_label # "Q1"
tr.year # 2027 (fiscal year)
tr.prepared_remarks # Texto de la presentacion
tr.qa_section # Preguntas y respuestas
tr.summary # Resumen ejecutivo (puede ser None)
tr.ai_summary # Resumen AI (puede ser None)
缓存
- 本地缓存位于
.cache/transcript_{TICKER}.json - 过期时间:24 小时
- 强制刷新:
--no-cache或force_refresh=True - 缓存绝不会存储 Cookie 或凭据
限制
- 仅有最新的 transcript:API 只返回最新的一份,没有完整的历史记录。
- 没有搜索端点:无法通过编程方式发现可用的股票代码。
- 不支持 Google/Facebook 身份验证:网页需要登录,API 不需要。
- 覆盖范围并不全面:跟踪了约 33,500 只股票,但并非所有股票都有 transcript(取决于它们是否公开举行财报电话会议)。
- 没有历史数据:参数
ccid无法启用对往期 transcript 的访问。
参考资料
- REFERENCES.md — 详细的技术文档
- EarningsWhispers — 网站
- news.js — 包含原始端点的 JS
评论
支持 Markdown