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

使用Python requests下载纳斯达克上市列表JSON文件请求卡住如何解决

纳斯达克API请求无响应解决方案

问题原因

  • 纳斯达克官方API配置了反爬校验规则,会拦截请求头User-Agent为python-requests的爬虫请求,服务端收到不符合要求的请求后不会返回响应,导致程序永久挂起。浏览器可以正常访问是因为浏览器发送的请求自带了标准浏览器的UA标识,能通过服务端校验。
  • 原代码没有配置超时参数,被拦截后会进入无限等待状态。

修复后代码

import requests

url = "https://api.nasdaq.com/api/screener/stocks?tableonly=true&limit=25&offset=0&download=true"
# 伪造Chrome浏览器请求头
headers = {
    "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 13_5; rv:109.0) Gecko/20100101 Firefox/116.0"
}
# 增加10秒超时配置,异常场景自动中断
resp = requests.get(url, headers=headers, timeout=10)
# 校验请求是否成功
resp.raise_for_status()
# 解析获取JSON数据
stock_data = resp.json()

补充说明

  • 可自行修改URL中的limit参数调整单次返回的股票条目数量,最大支持单次拉取全量上市股票数据
  • 若后续高频请求被限制,可适当增加请求间隔时间,避免触发IP限流规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 05:57:00