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

使用Requests爬取Shopee API返回Action Type 2错误,求技术支持

解决Shopee印尼站API爬取返回90309999错误的问题

错误原因分析

错误码90309999是Shopee的反爬拦截标识,说明你的请求被识别为非合法请求,核心问题在于:

  • 请求头严重缺失,仅设置了x-api-source和无效的af-ac-enc-dat字段,缺少浏览器环境的关键标识(如User-Agent)
  • 缺少会话验证用的Cookie,Shopee依赖Cookie判断请求是否来自真实用户会话
  • af-ac-enc-dat设为null不符合API的加密校验要求,该字段是Shopee的反爬验证字段

解决方案

1. 补全核心请求头

模拟真实浏览器的请求头,至少包含以下字段:

  • User-Agent:使用浏览器的真实UA,避免被识别为爬虫
  • Referer:设置为目标商品页面链接,表明请求来源合法
  • Accept-Language:设置为印尼语(id-ID),匹配站点区域
  • Cookie:从浏览器复制会话Cookie(需先访问Shopee印尼站并保持会话)

2. 修正无效参数

af-ac-enc-dat字段是加密校验字段,直接设为null会触发拦截,可暂时移除该字段,或从浏览器的真实API请求中复制有效值。

修改后的代码示例

import requests

url = 'https://shopee.co.id/api/v4/item/get?itemid=8835294847&shopid=382368918'
headers = {
    # 替换为你的浏览器真实User-Agent
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
    "x-api-source": "pc",
    "Referer": "https://shopee.co.id/Paha-Fillet-Ayam-Organik-Lacto-Farm-500gr-Paha-Fillet-Segar-Ayam-Probiotik-Organik-Paha-Boneless-Ayam-MPASI-Ayam-Sehat-Ayam-Anti-Alergi-Daging-Ayam-MPASI-i.382368918.8835294847",
    "Accept-Language": "id-ID,id;q=0.9,en-US;q=0.8,en;q=0.7",
    # 从浏览器复制你的会话Cookie,替换为实际值
    "Cookie": "SPC_EC=xxxxxxxxxxxx; SPC_U=xxxxxxxxxxxx; SPC_T_ID=xxxxxxxxxxxx; SPC_T_IV=xxxxxxxxxxxx"
}

response = requests.get(url, headers=headers, verify=True)
print(response.json())

额外注意事项

  • Cookie有效期有限,若请求失效需重新从浏览器获取
  • 若仍被拦截,可尝试使用requests.Session()先访问商品页面,再发起API请求,保持会话一致性
  • Shopee的API规则可能随时更新,长期爬取需关注前端加密逻辑的变化

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 23:00:17