yfinance 获取数据总是 too many request 无法获取价格啊

查看 9|回复 1
作者:emisora   
这问题都出现半年了。尝试用 AI 解决,给我试了半天还都是 too many request.
我的网络是可以用 gemini cli 之类的,按理说应该不是网络问题啊。
简单测试代码如下:
import yfinance as yf
import pandas as pd
# 设置永辉超市的股票代码
ticker = "601933.SS"  # .SS 表示上海证券交易所
# 创建 yfinance 对象
stock = yf.Ticker(ticker)
# 获取实时价格(最新收盘价或当前价格,视市场情况而定)
current_price = stock.history(period="1d")["Close"].iloc[-1]
# 获取股票的详细信息(包括公司名称等)
info = stock.info
# 输出结果
print(f"永辉超市 ({ticker}) 的实时价格: {current_price:.2f} CNY")
print(f"公司名称: {info.get('shortName', '未知')}")
运行就直接报错:
line 11, in
    current_price = stock.history(period="1d")["Close"].iloc[-1]
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.12/site-packages/yfinance/utils.py", line 103, in wrapper
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.12/site-packages/yfinance/base.py", line 91, in history
    return self._lazy_load_price_history().history(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.12/site-packages/yfinance/utils.py", line 103, in wrapper
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.12/site-packages/yfinance/scrapers/history.py", line 178, in history
    data = get_fn(
           ^^^^^^^
  File "/opt/anaconda3/lib/python3.12/site-packages/yfinance/utils.py", line 103, in wrapper
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.12/site-packages/yfinance/data.py", line 364, in get
    return self._make_request(url, request_method = self._session.get, user_agent_headers=user_agent_headers, params=
params, timeout=timeout)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.12/site-packages/yfinance/utils.py", line 103, in wrapper
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.12/site-packages/yfinance/data.py", line 424, in _make_request
    raise YFRateLimitError()
yfinance.exceptions.YFRateLimitError: Too Many Requests. Rate limited. Try after a while.
这要怎么解决呢,难道 yahoo 的 API 封这么严重啊。有没有知道怎么解决的老兄啊,感谢!

yfinance, Too, Many, Requests, API限制

promiser3d   
本来就不支持 A 股和港股的 tick 。只有美股有 tick 数据。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部