Akamai Bot Manager(Web)
Akamai Bot Manager(Web) 是 Akamai 的反爬平台挑战(无可见组件)。多数情况下什么都看不到——它在边缘悄悄判断,通过就直接放行。被判定为机器人时才出现拦截页或持续 403,页面上通常没有任何可交互的验证组件。
接口规格
| 项目 | 值 |
|---|---|
| type | akamai_web |
| 必填参数 | website_url |
| 可选参数 | user_agent |
| 返回 | 一串 Cookie(solution.cookie) |
| 怎么用这个解 | 带回请求的 Cookie 串(含 `_abck` 等) |
| 价格 | $4.58 / 1K 次 —— 按成功计费,没解出来退款 |
| 厂商文档 | Akamai 官方文档 |
参数去页面哪里取
下面全部是可以直接照做的定位方法 —— DOM 属性名、JS 全局变量名、script 上的 query 参数。
必填只有 website_url,可选 user_agent。不需要你自己去扒页面里的挑战脚本。
怎么确认目标站是 Akamai Bot Manager
看 Cookie,这是最快的判据:
document.cookie.split('; ').filter(c => /^(_abck|bm_sz|bm_sv|ak_bmsc|bm_mi)=/.test(c))- `_abck` —— 核心的机器人判定 cookie,几乎必然出现
- `bm_sz` —— 会话相关
ak_bmsc/bm_sv/bm_mi—— 同族,视配置出现
Network 面板的特征
有一个到本站路径的 POST,body 是一大段加密的 sensor data(通常几 KB 的不可读字符串)。脚本本身常被挂在站点自己的域下、路径随机,所以按脚本名找不可靠,按 cookie 找才稳。
`user_agent`
传的话必须和你后续请求要用的那个 UA 一致——凭证与 UA、出口 IP 一起绑定。
调用示例
一个端点解全部验证码类型 —— 换一种验证码只改 type 这一个字段。
curl -X POST https://api.everyinfra.com/api/v1/captcha \ -H "Authorization: Bearer omg_你的KEY" \ -H "Content-Type: application/json" \ -d '{"type":"akamai_web","website_url":"<website_url>"}'
{ "solution": { "cookie": "…" }, "billing": { "charged": true, "credits": 330 }}
怎么确认目标站用的就是它
页面里注入一段 sensor 脚本,采集浏览器环境与行为信号,加密后 POST 回 Akamai 边缘;边缘据此签发/更新一个加密 cookie,后续请求带着它来判定。凭证与**求解时的出口 IP 绑定**。
容易搞混的
与 Akamai sec-cpt 挑战令牌(type akamai_sec_cpt)不是一回事:那个是带强制等待时长的独立挑战,交付 token;这一条是 Bot Manager 的 Web 侧,交付 Cookie。也与 Akamai Bot Manager 移动端 SDK(akamai_bmp)区分——那条打的是 App 接口。
常见部署场景
- 大型电商、航空票务、酒店预订——Akamai 在这几个行业占有率很高
- 银行与金融机构的公开站点
- 票务与限量发售(抢购场景是它最主要的防护目标)
- 任何用 Akamai 做 CDN 且开了 Bot Manager 的站点
已知的坑
产出绑定求解时的出口 IP——必须用同一个 sticky 出口发后续请求,换 IP 立刻失效。
别按脚本名去识别:sensor 脚本常挂在站点自己的域下、路径随机化。cookie 名才是稳定判据。
移动 App 那一侧是另一条能力(Akamai Bot Manager 移动端 SDK,type 传 akamai_bmp)——目标是 App 的后端接口而不是网页。抓网页用这一条。
产出绑定求解时的出口 IP —— 你必须用同一个 sticky 出口发后续请求,换 IP 会立刻失效(与 DataDome 同类约束)
只要目标页面 URL —— 不需要你自己去扒页面里的挑战脚本
常见问题
Akamai Bot Manager(Web) 要传哪些参数?
必填 website_url;可选 user_agent。请求里 type 传 akamai_web。
解出来的东西怎么用?
返回一串 Cookie,取 solution.cookie。带回请求的 Cookie 串(含 _abck 等)
ak_bmsc 要去页面的哪里找?
重点找 ak_bmsc、_abck、bm_sz。本页「参数去页面哪里取」一节写了全部位置与取法,含可直接粘进控制台的一行命令。
怎么确认目标站用的就是 Akamai Bot Manager(Web)?
与 Akamai sec-cpt 挑战令牌(type akamai_sec_cpt)不是一回事:那个是带强制等待时长的独立挑战,交付 token;这一条是 Bot Manager 的 Web 侧,交付 Cookie。也与 Akamai Bot Manager 移动端 SDK(akamai_bmp)区分——那条打的是 App 接口。
有什么容易踩的坑?
产出绑定求解时的出口 IP——必须用同一个 sticky 出口发后续请求,换 IP 立刻失效。
多少钱一次,失败扣不扣?
$4.58 / 1K 次。按成功计费 —— 没解出来一律退款,所以失败不花钱。账单按次记,标价按每千次是为了让量级读得出来。