【问题标题】:Python pandas datareader isn't working [closed]Python pandas datareader 不工作 [关闭]
【发布时间】:2017-10-16 04:15:16
【问题描述】:

今天,我正在使用 Python 的 pandas_datareader 获取股票数据。有趣的是它在几个小时前才起作用,但现在我无法从 yahoo-finance 获取股票数据,但我可以使用 google。 然后,我在命令终端pip install pandas-datareader --upgrade 中升级了 pandas 数据读取器。 然后我像往常一样导入了升级包,from pandas_datareader import data, wb

它仍然不起作用,但它适用于获取股票期权。根据 pandas datareader https://pypi.python.org/pypi/pandas-datareader/0.4.0 的文档,它应该这样做

from pandas_datareader import Options

aapl = Options("AAPL" "yahoo")
aapl = aapl.get_all_data()

使用谷歌,抓取股票数据是可行的。

import datetime
import pandas as pd
from pandas_datareader import data, wb

start = datetime.datetime(2016, 1, 1)
end = datetime.datetime(2017, 1, 1)

aapl = data.DataReader("AAPL", "google", start, end)

Yahoo-Finance 不起作用。

aapl = data.DataReader("AAPL", "yahoo", start, end)

这太烦人了!谁能帮忙从雅虎获取股票数据?

这是回溯:

aapl = data.DataReader(“AAPL”,“雅虎”,开始,结束) 回溯(最近一次通话最后): 文件“”,第 1 行,在 aapl = data.DataReader(“AAPL”,“雅虎”,开始,结束) DataReader 中的文件“C:\Anaconda3\envs\p3\lib\site-packages\pandas_datareader\data.py”,第 94 行 会话=会话).read() 文件“C:\Anaconda3\envs\p3\lib\site-packages\pandas_datareader\yahoo\daily.py”,第 77 行,已读 df = super(YahooDailyReader, self).read() 文件“C:\Anaconda3\envs\p3\lib\site-packages\pandas_datareader\base.py”,第 173 行,正在读取 df = self._read_one_data(self.url, params=self._get_params(self.symbols)) 文件“C:\Anaconda3\envs\p3\lib\site-packages\pandas_datareader\base.py”,第 80 行,在 _read_one_data out = self._read_url_as_StringIO(url, params=params) _read_url_as_StringIO 中的文件“C:\Anaconda3\envs\p3\lib\site-packages\pandas_datareader\base.py”,第 91 行 response = self._get_response(url, params=params) _get_response 中的文件“C:\Anaconda3\envs\p3\lib\site-packages\pandas_datareader\base.py”,第 117 行 raise RemoteDataError('无法读取 URL: {0}'.format(url)) RemoteDataError:无法读取 URL:http://ichart.finance.yahoo.com/table.csv

【问题讨论】:

  • 您收到的错误信息是什么? it doesn't work 不是很有用
  • 网址根本不可用。尝试在网络浏览器中打开它。
  • ... 你认为 Python 在做什么?如果在浏览器中无法加载页面(数据),Python将如何加载数据?
  • 当我现在访问ichart.finance.yahoo.com 时,它显示消息“雅虎马上就会回来。我们的工程师正在迅速解决问题。”因此,现在显然存在服务器端问题。请耐心等待,稍后再试。
  • 换句话说,该 URL 不可用,正如前面几个 cmets 所述。所以它与新的数据读取器无关,在浏览器中检查 URL 确认了问题。服务已关闭。

标签: python pandas anaconda yahoo-finance


【解决方案1】:

截至撰写本文时,该网站已关闭。正如其他人所指出的那样,这似乎不是您的错误。

阅读错误消息会给出一些指示,从那里逻辑上的进步将是简单地转到有问题的 URL:“http://ichart.finance.yahoo.com/table.csv”,它指出不可用。

【讨论】:

  • 雅虎有没有说过他们什么时候可以恢复工作?
  • 这里是讨论修复的链接:github.com/pydata/pandas-datareader/issues/315
  • 嘿 Jeremy,我看到有一个 0.4.1 版本。怎么我做pip install pandas-datareader -U的时候不接新版本?
  • 你好@jason,在我自己的电脑上尝试这个命令时,我安装的版本是0.4.0。在查看了 Pandas 的 GitHub 存储库后,它说最新版本是 0.4.0 (github.com/pydata/pandas-datareader)