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

使用Python Requests爬取Shopee商品返回错误码90309999求助

解决Shopee巴西站爬取错误90309999的建议

针对你遇到的Shopee巴西站爬取返回错误码90309999的问题,以下是不用Selenium/Scrapy的可行调整方案:

  • 更换真实浏览器User-Agent
    不要使用Googlebot这类爬虫标识,改用当前主流浏览器的真实UA(比如最新Chrome的UA),反爬系统很可能已经针对爬虫UA做了拦截。示例UA:

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
    
  • 补充完整的常规请求头
    除现有头外,添加浏览器请求必带的Accept、Accept-Language、Referer,适配巴西站的语言环境:

    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36',
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
        'Accept-Language': 'pt-BR,pt;q=0.8,en-US;q=0.5,en;q=0.3',
        'Referer': 'https://shopee.com.br/',
        'x-api-source': 'pc',
    }
    
  • 模拟正常访问流程获取Cookie
    先请求Shopee首页获取必要的会话Cookie,再发起搜索请求,很多反爬会校验Cookie的来源:

    from requests import Session
    import time
    import random
    
    base_url = 'https://shopee.com.br/search?filters=9&keyword=funko&locations=Nacional&noCorrection=true&page=0&sortBy=relevancy'
    home_url = 'https://shopee.com.br/'
    
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36',
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
        'Accept-Language': 'pt-BR,pt;q=0.8,en-US;q=0.5,en;q=0.3',
        'Referer': 'https://shopee.com.br/',
        'x-api-source': 'pc',
    }
    
    with Session() as s:
        # 先访问首页初始化会话
        s.get(home_url, headers=headers)
        time.sleep(random.uniform(1, 2))  # 模拟人类操作延迟
        # 发起搜索请求
        response = s.get(base_url, headers=headers)
        print(response.status_code)
        print(response.text)
    
  • 控制请求频率
    每次请求前添加1-3秒的随机延迟,避免因请求过于频繁触发反爬机制:

    time.sleep(random.uniform(1, 3))
    
  • 校验af-ac-enc-dat参数
    该参数是Shopee的加密验证字段,空值或null无法通过校验。可以通过浏览器开发者工具抓包正常搜索请求的该字段值,直接复制到代码中测试;如果需要长期使用,需分析该参数的生成逻辑(通常和Cookie、请求时间等信息相关)。

  • 检查URL参数是否有变化
    对比浏览器正常请求的URL参数,确认你的请求参数是否完整,比如是否新增了timestamp、signature等动态参数,若有则需要补充对应参数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 05:44:54