Google Finance API日期参数不生效问题排查求助
Google Finance Historical Date Parameters (expd/expm/expy) Not Working?
你的怀疑完全正确——Google早就停止支持旧版Google Finance的这个数据接口了,那些expd/expm/expy日期参数已经彻底失效,不是你操作有遗漏。
具体原因:
- 大概在2018年左右,Google就逐步关停了旧的Google Finance公开API,包括你调用的
https://finance.google.com/finance这个端点。现在这个地址只会返回标的最新的实时/延迟行情数据,所有历史日期相关的参数都会被直接忽略,所以你拿到的永远是当前最新的收盘价。 - Google现在把金融数据服务整合到了付费的Google Cloud Finance Data API,或者通过Google Sheets的
FINANCE函数来提供有限的历史数据查询。
你的代码没有问题
你写的请求逻辑、参数格式都是旧接口正确的用法,但架不住服务端已经不再处理这些参数了,所以才会出现参数不生效的情况。
免费替代方案
如果需要获取历史股价数据,推荐几个免费的替代工具:
- yfinance:第三方封装的雅虎财经API,使用简单且稳定
import yfinance as yf # 获取AAPL 2018年3月10日的收盘价 aapl_ticker = yf.Ticker("AAPL") historical_data = aapl_ticker.history(start="2018-03-10", end="2018-03-11") print(f"2018-03-10 AAPL收盘价: {historical_data['Close'].iloc[0]}") - Alpha Vantage:提供免费API,有请求次数限制(5次/分钟,500次/天),适合个人小量使用
- IEX Cloud:免费层级提供基础的历史行情数据,足够日常测试使用
内容的提问来源于stack exchange,提问作者GivenX
相关产品推荐
相关产品推荐

