python - DataReader 谷歌财务日期不工作

标签 python google-finance pandas-datareader

我只是使用 pandas datareader 来获取过去两周左右的股票数据,它运行良好。突然间,从昨天开始,所提供的日期就不再有效了。它只是给我过去一年的数据,我无法更改日期。曾经与注释掉的那个一起工作,但现在不是。我什至将其更改为使用 datetime 对象,但仍然无法正常工作。任何想法?我更新了 pandas 和 pandas_datareader 仍然没有运气。用了另一台电脑还是不行。他们最近是否更改了 API?

from pandas_datareader import data
import datetime

#start = '2010-01-01'
#end = '2017-7-31'
start = datetime.datetime(2010, 1, 1)
end = datetime.datetime(2017,7, 31)
f = data.DataReader('AAPL', 'google', start, end)
print(f.head())

输出:

              Open    High     Low   Close    Volume
Date                                                
2016-09-19  115.19  116.18  113.25  113.58  47023046
2016-09-20  113.05  114.12  112.51  113.57  34514269
2016-09-21  113.85  113.99  112.44  113.55  36003185
2016-09-22  114.35  114.94  114.00  114.62  31073984
2016-09-23  114.42  114.79  111.55  112.71  52481151

最佳答案

Google 已将 Google 财经 URL 更改为 finance.google.com/finance/historical 而不是 www.google.com/finance/historical,后者用作 pandas_datareader 中的 URL。

当从旧 URL 获取数据并重定向到新 URL 时,服务器返回 HTTP 302。但是,在 HTTP 重定向期间缺少参数开始日期/结束日期。

url在源码中设置: https://github.com/pydata/pandas-datareader/blob/master/pandas_datareader/google/daily.py

也许您可以修改 URL 并使用您自己的 pandas_datareader 版本。

关于python - DataReader 谷歌财务日期不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46259528/

相关文章:

google-api - Google 财经 API 错误

arrays - Googlefinance - 返回高价和日期

python-3.x - 如何使用内存有限的python处理两个或多个Big CSV文件?

python - 可选参数如何变成必需参数?

Python - 选择模式时随机打破平局

python - 用requests和BeautifulSoup解析leetcode题目内容

python - 将基于 pandas python 中重复列的数据集分组为列表

python - Google Cloud Platform - 最终异常 : b'[Errno 28] No space left on device') for download of

google-finance - 为什么谷歌的 pandas_datareader 不起作用?

python - 如何将 mysqldump 导入 Pandas