[Bug] growth/institution 恒为 partial:akshare stock_yjyg_em / stock_yjkb_em 报 TypeError,stock_gdfx_top_10_em 报 KeyError
Author: YHQS1997Created Sep 24, 2026Updated Sep 24, 2026
环境
| 项 | 值 |
|---|---|
| 软件版本 | v3.32.0(桌面版 Electron,构建 2026-09-06) |
| 系统 | Windows 11 x64 |
| akshare | 打包内置(requirements 约束 >=1.12.0) |
| 配置 | ENABLE_EASTMONEY_PATCH=true,超时已放宽(45/15/2) |
现象
fundamental_context 的 8 个子项中,growth(成长)与 institution(机构)恒为 partial,
10/10 次分析全部复现,与网络无关。context_snapshot 中的结构化错误:
growth / institution 子项 errors:
stock_yjyg_em:TypeError # 业绩预告
stock_yjkb_em:TypeError # 业绩快报
stock_gdfx_top_10_em:KeyError # 十大股东分析
- 报错发生在 akshare 函数内部(TypeError / KeyError),不是超时也不是网络——
同一时段同一配置下
earnings/dragon_tiger/boards均能正常返回。 - 疑似东财页面结构变更后,akshare 现有版本对这些接口的解析未跟上 (或打包内置的 akshare 版本过旧/过新与接口不匹配)。
- 桌面版用户无法升级内置 akshare,因此该问题在桌面版上无法通过配置绕过。
已排除「配置没拉满」的可能
- 已对照上游
main分支.env.example(334 个配置项):不存在成长 / 机构 / 十大股东相关的 配置项或数据源开关;数据源*_PRIORITY组注释明确「仅控制普通 A 股日 K 通用链路」。 - 相关超时与补丁均已按上游建议调高(STAGE 45 / FETCH 15 / RETRY 2 /
ENABLE_EASTMONEY_PATCH=true), 均高于上游默认值(8.0 / 8.0 / 1 / false)。 - 报错形态是 TypeError / KeyError(函数内部异常),不是超时、不是网络、不是鉴权—— 换配置无法改变函数内部对返回字段的解析方式。
补充:模板提到 Tushare Pro 需要 2000 积分、可作为数据源之一。若官方确认 Tushare 能提供同类数据, 请在文档中说明;但即便如此,没有 Tushare 账号的用户仍会稳定遇到这三个 akshare 函数报错, 上游修复或版本约束仍是必要的。
建议修复方向
- 在当前打包的 akshare 版本上复现三个函数的直接调用,确认是否为上游缺陷;
- 若是上游缺陷 → 升级 akshare 或在上游修复前对这三个函数做异常降级(标记 partial 而非反复重试);
- 若是打包版本问题 → 调整
requirements.txt的 akshare 版本约束。
数据来源:analysis_history.context_snapshot.enhanced_context.fundamental_context 的 errors 与 source_chain 字段。
Source: ZhuLinsen/daily_stock_analysis