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

使用Python/requests爬取时遭遇403 Forbidden问题求助

解决requests.Session()请求返回403 Forbidden的问题

几个可尝试的修复点

1. 删除多余的请求头字段

你手动添加了authority、path、scheme、method这些字段,其实requests库会自动处理这些内容,硬塞进去反而容易被服务器判定为异常请求,直接删掉即可。

2. 避免重复传递参数

你在URL里已经拼接了page={i},同时又通过params传递path参数,这可能导致请求参数混乱。先查看浏览器中实际请求的参数结构,再决定是否保留params。

3. 检查Cookie有效性

你复制的Cookie可能已过期,或者其中的会话ID与当前Session不兼容。建议:

  • 重新从浏览器获取最新的Cookie(注意不要包含过期的会话标识)
  • 让Session自动管理Cookie:先请求一次首页,让服务器返回新的会话Cookie,后续请求复用该Session即可,无需手动设置Cookie。

4. 放慢请求速度

虽然你设置了0.25秒等待,但可以延长到1-2秒,避免触发频率限制。另外,首次请求可先访问首页,模拟真实用户的访问流程。

修复后的示例代码

import requests
import time

session = requests.Session()

# 先访问首页获取有效会话Cookie
session.get('https://www.arrow.com/en')

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36',
    'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
    'accept-encoding': 'gzip, deflate, br',
    'accept-language': 'en-US,en;q=0.9',
    'cache-control': 'max-age=0',
    'sec-ch-ua': '"Chromium";v="112", "Google Chrome";v="112", "Not:A-Brand";v="99"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"Windows"',
    'sec-fetch-dest': 'document',
    'sec-fetch-mode': 'navigate',
    'sec-fetch-site': 'none',
    'sec-fetch-user': '?1',
    'upgrade-insecure-requests': '1'
}

for i in range(1, 401):
    url = f'https://www.arrow.com/en/categories/capacitors/fixed-capacitors/capacitor-ceramic-multilayer?page={i}'
    response = session.get(url, headers=headers)
    print(url)
    print(response.status_code)
    # 可打印部分响应内容确认是否正常
    # print(response.text[:500])
    time.sleep(1)
    # 测试第一页的话保留break,正式爬取时删除
    # break

其他解决方向

如果以上方法都无效,大概率是服务器使用了Cloudflare这类反爬机制,此时可以尝试cfscrape库,或者直接用Selenium模拟真实浏览器操作。另外,不要一次性爬取400页,分批次进行并设置随机间隔,降低被封禁的风险。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 02:00:00