Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python的Robinhood问题_Python_Web Scraping - Fatal编程技术网

Python的Robinhood问题

Python的Robinhood问题,python,web-scraping,Python,Web Scraping,我正在编写一个函数,提取股票的买入/卖出/持有分析师评级,如下所示: pip install robin_stocks import robin_stocks robin_stocks.authentication.login(username=None, password=None, expiresIn=86400, scope='internal', by_sms=True, store_session=True, mfa_code=None) def getRobinRating(sym

我正在编写一个函数,提取股票的买入/卖出/持有分析师评级,如下所示:

pip install robin_stocks
import robin_stocks
robin_stocks.authentication.login(username=None, password=None, expiresIn=86400, scope='internal', by_sms=True, store_session=True, mfa_code=None)

def getRobinRating(symbol):
    buy = robin_stocks.stocks.get_ratings(symbol, info='summary')['num_buy_ratings']
    return buy

print(getRobinRating('NVCR'))
这会产生以下错误:

Traceback (most recent call last):

  File "<ipython-input-78-79c186ebe0bf>", line 9, in <module>
    print(getRobinRating('NVCR'))

  File "<ipython-input-78-79c186ebe0bf>", line 5, in getRobinRating
    buy = robin_stocks.stocks.get_ratings(symbol, info='summary')['num_buy_ratings']

KeyError: 'num_buy_ratings'
输出:

{'summary': {'num_buy_ratings': 4, 'num_hold_ratings': 2, 'num_sell_ratings': 1}, 'ratings': [], 'instrument_id': '4d591f16-7f0a-4fe7-a369-5346a61c0dfb', 'ratings_published_at': None}
为什么在前一种情况下无法访问词典?

调用
get\u ratings(symbol,info='summary')
返回一个词典,其中
summary
作为第一个键:

{'summary': 
    {'num_buy_ratings': 4, 
     'num_hold_ratings': 2, 
     'num_sell_ratings': 1}, 
 'ratings': [], 
 'instrument_id': '4d591f16-7f0a-4fe7-a369-5346a61c0dfb', 
 'ratings_published_at': None}
要访问内部词典,请首先访问
摘要

MyDict['summary']['num_buy_ratings']
请尝试以下代码:

buy = robin_stocks.stocks.get_ratings(symbol, info='summary')['summary']['num_buy_ratings']
buy = robin_stocks.stocks.get_ratings(symbol, info='summary')['summary']['num_buy_ratings']