【问题标题】:Pandas-Datareder does not load Google Finance dataPandas-Datareader 不加载 Google 财经数据
【发布时间】:2018-10-15 14:47:15
【问题描述】:

我正在尝试通过pandas_datareader 下载 Google 财经数据。

当我执行时:

import pandas_datareader.data as web
from datetime import datetime
start = datetime(2018, 1, 2)
end = datetime(2018, 10, 12)
ms = web.DataReader('MS', 'google', start, end)
x = f.iloc[:,3]
print (x)

我得到以下信息:

RemoteDataError:无法读取 URL:https://finance.google.com/finance/historical?q=MS&startdate=Jan+02%2C+2018&enddate=Oct+12%2C+2018&output=csv
响应文本: b'<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"/><title>Sorry...</title><style> body { font-family: verdana, arial, sans-serif; background-color: #fff; color: #000; }</style></head><body><div><table><tr><td><b><font face=sans-serif size=10><font color=#4285f4>G</font><font color=#ea4335>o</font><font color=#fbbc05>o</font><font color=#4285f4>g</font><font color=#34a853>l</font><font color=#ea4335>e</font></font></b></td><td style="text-align: left; vertical-align: bottom; padding-bottom: 15px; width: 50%"><div style="border-bottom: 1px solid #dfdfdf;">Sorry...</div></td></tr></table></div><div style="margin-left: 4em;"><h1>We\'re sorry...</h1><p>... but your computer or network may be sending automated queries. To protect our users, we can\'t process your request right now.</p></div><div style="margin-left: 4em;">See <a href="https://support.google.com/websearch/answer/86640">Google Help</a> for more information.<br/><br/></div><div style="text-align: center; border-top: 1px solid #dfdfdf;"><a href="https://www.google.com">Google Home</a></div></body></html>'

如何在不涉及此内容的情况下访问数据? 此外,请注意,使用其他 API,例如 IEX,数据读取器工作正常(只是 Google 财经具有更广泛的数据可用性)。

【问题讨论】:

    标签: python datareader google-finance


    【解决方案1】:

    Pandas Datareader 中使用的 Google Finance 端点是discontinued。因此,自当前 Pandas Datareader 版本 (0.7.0) 起,Google 财经已为 deprecated(标记为删除)。

    您可能使用的是早期版本的 Pandas Datareader,这就是为什么使用 web.DataReadergoogle 数据源会引发 RemoteDataError 而不是 ImmediateDeprecationError

    为了解决您的问题,我建议使用不同的数据源,例如IEX

    ms = web.DataReader("ms", "iex", start, end)

    其他选项包括Alpha VantageQuandl

    【讨论】:

      【解决方案2】:

      我正在运行以下代码,以使用“雅虎”获取每日股票价格。这是代码。

      import datetime as dt
      import pandas as pd
      import pandas_datareader.data as data
      
      ticker = input(str("Enter ticker: "))
      data_source = 'yahoo'
      start = dt.datetime(2017, 1 ,1)
      end = dt.datetime(2020, 1 ,12)
      df= data.DataReader(ticker, data_source, start, end)
      

      【讨论】:

        猜你喜欢
        • 2018-01-22
        • 2018-07-12
        • 2014-05-24
        • 2018-05-18
        • 2019-09-12
        • 1970-01-01
        • 1970-01-01
        • 2020-11-28
        • 1970-01-01
        相关资源
        最近更新 更多