当前位置: 首页 > ds >正文

【已解决】YFRateLimitError(‘Too Many Requests. Rate limited. Try after a while.‘)

最近在使用雅虎金融 yfinance library 获取美股数据的时候,突然出现报错

YFRateLimitError(‘Too Many Requests. Rate limited. Try after a while.’)

字面意思就是我请求的频率太高了被限制了过一会儿再试试看吧!但是,实际上呢,我也只是第一次请求并且只做了一次请求,难道这个频率也高嘛。事出反常必有妖啊,ok,立马google了一下这个错误。关于这个错误确实不是个例,网上也有很多人遇到过,下图是认可最多的解决方案:
在这里插入图片描述
点击链接直达该issue

意思就是说需要升级下libary到最新版本,这个回答被大多数开发者所认同,很多人反馈解决了这个问题。同样地,我也试了下这个解决方案,执行命令

pip install yfinance --upgrade

运行截图如下:
在这里插入图片描述
看来我的 package 已经是最新的了,ok,那再次运行代码获取美股数据试试:

start_date = '2005-04-01'
end_date = '2025-04-30'
tickers = ['APP', 'TSLA']
data = yf.download(tickers, start_date, end_date, progress = False)['Close']
data = data.pct_change().dropna()
data = data[tickers]
print(data[tickers])

但是,在运行完之后发现依旧报错,还是之前的错误提示。
在这里插入图片描述

因此,排除是因为 package 不是最新的缘故,可能是其他原因。在经过一番研究和摸索之后发现,雅虎金融已经停止对东大提供数据服务,和 package 是不是最新的没有关系。好的,那只有用魔法来对抗魔法了,上VPN!上了VPN之后,通过代理国外IP访问雅虎金融,并且在运行数据获取代码之前,加一段这样的代码:

import os
proxy = 'http://127.0.0.1:7890' # 代理设置,此处修改
os.environ['HTTP_PROXY'] = proxy
os.environ['HTTPS_PROXY'] = proxy

使用代理并设置端口号,一般代理端口号为7890。之后,再运行之前的代码,获取美股数据便成功了。
在这里插入图片描述

最后,总结下就是:在东大范围内获取雅虎金融的数据,需要开启VPN使用代理地址,并且设置代理端口号。

http://www.xdnf.cn/news/10197.html

相关文章:

  • Spring Boot 3 整合 MQ 构建聊天消息存储系统
  • 测试用例及黑盒测试方法
  • Java进化之路:从Java 8到Java 21的重要新特性(深度解析)
  • JS手写代码篇---手写节流函数
  • Linux(8)——进程(控制篇——上)
  • mac mini m4命令行管理员密码设置
  • 【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
  • 专业课复习笔记 11
  • 评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
  • 在 Linux 上构建 Kubernetes 单节点集群:Minikube 安装与实战指南
  • 第2章-12 输出三角形面积和周长(走弯路解法)
  • 26 C 语言函数深度解析:定义与调用、返回值要点、参数机制(值传递)、原型声明、文档注释
  • C++ 模版复习
  • 【个人思考】超级玛丽亚小游戏设计文档
  • Unity UI系统中RectTransform详解
  • 用美图秀秀批处理工具定制专属图片水印的方法详解
  • 【技术支持】安卓11开机启动设置
  • IDEA修改JVM内存配置以后,无法启动
  • TC/BC/OC P2P/E2E有啥区别?-PTP协议基础概念介绍
  • C语言操作Kafka
  • 3DMAX+Photoshop教程:将树木和人物添加到户外建筑场景中的方法
  • java对接bacnet ip协议(跨网段方式)
  • Kotlin-特殊类型
  • 安卓逆向篇JEB 反编译断点动态调试加密算法还原逻辑会员绕过
  • 亚马逊商品评论爬取与情感分析:Python+BeautifulSoup实战(含防封策略)
  • InnoDB引擎逻辑存储结构及架构
  • 【Netty系列】Reactor 模式 2
  • 奇异值分解(SVD):线性代数在AI大模型中的核心工具
  • 使用原生前端技术封装一个组件
  • 面试题 08.08. 有重复字符串的排列组合【 力扣(LeetCode) 】