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

如何在Google Chrome/Python中获取API请求头?以NBA接口为例

请求头获取指南:以NBA Stats API为例

一、教程中请求头的来源

教程里的HEADERS字典是模拟真实浏览器访问stats.nba.com时发送的请求头。这类网站会通过检查请求头判断访问来源,拒绝非浏览器的请求(比如直接用requests发起的无标识请求)。其中几个关键字段是:

  • User-Agent:标识浏览器类型和版本,让服务器认为你是正常用户
  • x-nba-stats-origin、x-nba-stats-token:NBA API特有的验证字段,必须包含才能返回数据
  • Referer:表明请求的来源页面,防止跨域非法请求

二、如何从Chrome开发者工具复制请求头

你看到的请求头和教程不同是正常的(浏览器版本、会话状态不同都会导致差异),复制方法如下:

  1. 打开Chrome开发者工具(快捷键F12或Ctrl+Shift+I),切换到Network标签
  2. 刷新页面或触发你需要的API请求(比如在stats.nba.com查看球员数据)
  3. 在Network列表中找到目标API请求(比如你代码里的leaguedashplayerstats),点击它
  4. 切换到Headers标签,向下滚动找到Request Headers区域
  5. 复制请求头的两种方式:
    • 手动复制:逐个记录Key和Value,整理成Python字典
    • 批量转换:右键点击Request Headers区域,选择「Copy」→「Copy as cURL (bash)」,然后把复制的cURL命令里的-H "Key: Value"部分提取出来,转换成Python字典格式(比如-H "User-Agent: xxx"对应'User-Agent': 'xxx')

三、requests能否自动获取请求头?

不行。requests本身不会自动抓取浏览器的请求头,因为每个网站要求的请求头都不一样,必须手动从开发者工具中捕获。不过你可以预设一些通用的浏览器请求头(比如User-Agent),但像NBA API这类有特殊验证字段的,必须从真实请求中提取。

四、通用网站请求头获取步骤

不管爬取哪个网站,获取正确请求头的流程都是:

  • 用浏览器打开目标网站,触发你需要的API请求
  • 通过开发者工具Network标签找到该请求
  • 复制并整理请求头为Python字典
  • 将字典传入requests的headers参数发起请求

注意:部分网站的请求头包含会话相关字段(比如Cookie),这类字段可能会过期,需要定期更新。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 17:10:33