You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python requests请求雅虎财经部分股票页面返回404错误问题排查

网页请求返回404错误的原因
  • 反爬策略的UA校验拦截:requests库默认发送的请求头中User-Agent字段为python-requests/[版本号],会被Yahoo Finance的反爬机制识别为爬虫请求。不同股票代码对应页面的拦截规则粒度不同,ALB对应页面未触发拦截规则可正常访问,AEE对应页面触发拦截后返回伪装的404 Not Found响应。
  • 缺少必要的请求上下文:浏览器访问页面时会自动携带站点生成的Cookies、Accept、Accept-Language等标准请求头字段,你的Python请求未携带这类浏览器特征字段,被反爬策略判定为异常请求,返回404错误。
修复方案

修改请求逻辑,添加模拟浏览器的请求头即可解决问题,参考代码如下:

import requests
def yahoo_summary_stats(stock):
    # 模拟Firefox浏览器的User-Agent字段
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0"
    }
    response = requests.get(f"https://finance.yahoo.com/quote/{stock}", headers=headers)
    print(response.reason)

如果添加User-Agent后仍无法访问,可以补充其他浏览器标准请求头字段,或使用requests.Session()对象维持访问过程中生成的Cookies,进一步模拟正常用户的访问行为。

内容的提问来源于stack exchange,提问作者Martin Kunze

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 14:06:04