首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >导致此yahoo_fin get_quote_table错误的原因是什么?

导致此yahoo_fin get_quote_table错误的原因是什么?
EN

Stack Overflow用户
提问于 2020-06-29 23:51:01
回答 1查看 487关注 0票数 0

我正在尝试用yahoo_fin的get_quote_table获取实时价格、前一交易日的收盘价和当天的交易范围。它有时会处理这些错误,但我的程序能够...直到现在。今天,我经常收到这些错误。

代码语言:javascript
运行
复制
File "bot.py", line 120, in start
    price_opens[i] = get_quote_table(all_tickers[i])["Previous Close"]
  File "C:\Users\NAME\AppData\Local\Programs\Python\Python36\lib\site-packages\yahoo_fin\stock_info.py", line 202, in get_quote_table
    quote_price = pd.DataFrame(["Quote Price", get_live_price(ticker)]).transpose()
  File "C:\Users\NAME\AppData\Local\Programs\Python\Python36\lib\site-packages\yahoo_fin\stock_info.py", line 425, in get_live_price
    df = get_data(ticker, end_date = pd.Timestamp.today() + pd.DateOffset(10))
  File "C:\Users\NAME\AppData\Local\Programs\Python\Python36\lib\site-packages\yahoo_fin\stock_info.py", line 78, in get_data
    raise AssertionError(resp.json())
  File "C:\Users\NAME\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\models.py", line 898, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Users\NAME\AppData\Local\Programs\Python\Python36\lib\json\__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "C:\Users\NAME\AppData\Local\Programs\Python\Python36\lib\json\decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\NAME\AppData\Local\Programs\Python\Python36\lib\json\decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

我也一直在Heroku上运行这个机器人,同样的问题也发生了。导致此问题的原因可能是什么?请帮帮忙。

编辑:这个错误是随机发生的。有时,某个报价器会出现故障,而另一次,它会正常工作。然而,今天,我的机器人每次启动时,它都是忙碌的。

EN

回答 1

Stack Overflow用户

发布于 2020-06-30 04:07:40

似乎发生了以下两件事中的一件:YF的服务出了问题,或者(更有可能的)他们正在积极地尝试通过编程来限制访问其端点的人数。你得到JSONDecodeError的原因是有一个404错误:

你可以使用while循环和try / except块来解决这个问题:

代码语言:javascript
运行
复制
while True:
    try:
        # your code here
        break
    except ValueError: # ValueError will catch the JSONDecodeError
        continue
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62641922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档