如何从 Quandl 获取带有句号的股票数据? Python

How to grab stock data from Quandl with tickers that have a full stop? Python

由于 Python 的 pandas_datareader API 不再能够提取雅虎财经股票数据,我正在使用 quandl。这需要设置一个帐户并在命令终端中执行 'pip install quandl'。 如果我有一个不寻常的股票代码,比如 BRK.B,使用 pandas_datareader API 从 Google 中提取股票数据非常好。

 import pandas as pd
 import datetime
 from pandas_datareader import data, wb
 start = datetime.datetime(2016, 1, 1)
 end = datetime.datetime(2017, 1, 1)
 brk = data.DataReader("BRK.B", "google", start, end)["Close"]
 brk

但是,由于股票代码 BRK.B 里面有一个句号,这不适用于 quandl。

 import quandl
 brk = ["BRK.B"]
 for stk in brk:
     b = quandl.get("WIKI/{}".format(stk),
         authtoken = "Mixture of numbers, and lower/upper case letters",
         start, end)["Adj. Close"]

这会导致代码中断。但是,如果我将 ["BRK.B"] 换成任何正常的股票代码,例如 ["AAPL"],它就可以正常工作。 我想使用 quandl API 从标准普尔 500 指数中提取所有 505 只股票,但是,因为一些股票代码有一个“。”在他们那里,这是行不通的。 我试过 format(stk.replace(".", "-")) 也没有用。

如有任何帮助,我们将不胜感激。顺便说一句,对于那些不知道的人。您必须设置一个 quandl 帐户,然后从您的 quandl 帐户设置中获取您的 API 密钥代码,然后将其复制并粘贴为您的 authtoken。

你试过用下划线代替吗?

"WIKI/{}".format(stk.replace(".", "_"))  # replacing . with _ instead of -

如果我没记错的话,点用于从数据中分割特定列。