面向拦截机器人网站的 Web Unlocker API

Web unlocker 接收一个普通的 HTTP 请求,以真实浏览器的 TLS 指纹从住宅 IP 重新发出;目标站拦截时换新 IP 重试,出现 JavaScript 挑战时切换到真实浏览器。QuantumProxies.io 同时以 REST 端点和正向代理两种形态提供,共用一个预付费余额。

Web Unlocker 的工作原理

1 · 你的请求以浏览器身份发出

客户端发送的身份标头(User-Agent、Accept、Sec-Fetch-*)会被替换为与 TLS 握手一致的一组标头。Authorization、Cookie、Content-Type 和自定义标头原样通过。

2 · 被拦截的 GET 换新 IP 重试

遇到挑战或拒绝时,会从新的住宅出口以另一个指纹家族(Chrome、Firefox、Brave)重试。在 90 秒预算内最多进行三次 TLS 尝试。

3 · 仍被拦截?真实浏览器接手

当每次 TLS 尝试都遭遇挑战,无头浏览器会抓取页面并通过 JavaScript 挑战。如果你传入粘性会话 ID,由此获得的 clearance Cookie 会被保留,并在同一会话内你对该站点的后续请求中复用。

三种调用方式

底层是同一个引擎。选择你的代码已经会说的那种接口。

REST 端点

用你的 API 密钥调用 POST /api/v1/scraper/unlock。无需代理协议,无需证书:一次普通的 HTTPS 调用即可返回目标的状态码、标头、正文以及 blocked 标志。

正向代理

将任意 HTTP 客户端指向 unlock.quantumproxies.io:9000,使用在控制台创建的代理子用户。定向参数随用户名传递:国家、州、城市、会话、TLS 配置和层级。

控制标头

x-qp-url、x-qp-country、x-qp-session、x-qp-render、x-qp-keep-headers、x-qp-success-status 和 x-qp-timeout 控制单个请求。也接受两家最常见商用 unlocker 的标头写法。

QuantumProxies.io 的 Web Unlocker 专为普通 HTTP 客户端拿不到的页面而生:反爬虫层在读取任何标头之前,就先对 TLS 握手和 HTTP/2 设置打分的那类页面。fetch 或 requests 调用无论设置什么 User-Agent,都带着其运行时的签名。Unlocker 在传输层修正这一点,并且与 Extract API 不同,它返回源站的原始响应:任意方法、你自己的标头和正文,以及固定在同一个出口 IP 上的登录态或购物车。

Web unlocker 能做而代理做不到的事

轮换住宅代理改变的是请求的来源,改变不了请求的样子:TLS 握手、HTTP/2 帧顺序和标头组合仍然在说 Python 或 Node,而现代反爬虫墙打分的正是这些。Web unlocker 把请求改写成真实浏览器会发出的样子,被源站拒绝时换一个指纹重试,源站要求 JavaScript 时切换到真实浏览器。你保留代理接口,Unlocker 补上判断力。

真实浏览器的 TLS 指纹

每次尝试都使用六种浏览器配置之一:Chrome、Firefox、Safari、Safari iOS、Edge 或 Brave,REST 端点还额外提供移动版 Safari。若不固定配置,重试会轮换指纹家族,让已经烧掉一种握手的站点遇到另一种。身份标头会按配置改写,因为在 Chrome 握手上挂一个 Firefox 的 User-Agent,比二者单独出现更容易暴露。Authorization、Cookie、Content-Type 和自定义 X-* 标头原样转发;重放抓包得到的 App 请求时,keepHeaders 可让你的标头一字不改地发送。

换新 IP 重试,然后交给真实浏览器

被拦截的 GET 会从新的住宅出口以轮换后的指纹重试,在 90 秒预算内最多三次 TLS 尝试。若每次都返回挑战,请求升级到无头浏览器,由它通过 JavaScript 挑战并返回渲染后的页面。POST、PUT 和 DELETE 在收到 HTTP 响应后绝不重试:403 意味着源站已经看到了请求,重放可能导致订单或表单被重复提交。将 render 设为 html 或 png 可直接从浏览器开始,设为 false 则停留在 TLS 层。

拦截会被如实报告,绝不伪装成成功

每个响应在送达你之前都会被分类。分类器读取反爬虫厂商在页面上留下的标头和正文特征,同时给出厂商(cloudflare、datadome、akamai 等)和拦截类别:js_challenge、captcha、ip_reputation、fingerprint、geo 或 timeout。在 REST 端点上,仍被拦截的页面会以 blocked 为 true 返回,并附上页面本身供检查。在正向代理上,以 2xx 返回的挑战会变成带 x-qp-unlocker-blocked 标头的 502,而源站真正的拒绝(403、429、503)原样转发。交互式验证码不会被破解:它们以 captcha 标签返回。

会话、地理定向与按站点记忆

传入国家,可选地再传入州或城市,即可从该市场出口。留空时,出口国家由目标的顶级域名决定,默认回退到美国。粘性会话 ID 可在 3 到 1,440 分钟内让多次调用保持同一个出口 IP,使登录态、购物车或分页列表停留在同一身份上。Unlocker 还会按域名记住最近哪一层和哪个指纹家族成功通过,下次直接从那里开始;刚被某站点拒绝的出口会被隔离,不再提供给该站点。

Premium 与 Mobile 层级,按 GB 预付费

Web Unlocker 运行在两个出口池上:住宅 IP 的 Premium 和 4G/5G 运营商 IP 的 Mobile,各自拥有在控制台购买的独立预付费 GB 余额。用量按传输字节计算,包括重试和浏览器渲染;余额耗尽时代理返回 402,而不是静默失败。每个层级的每 GB 价格显示在控制台的 Web Unlocker 页面,就在购买按钮旁边。无订阅,无最低期限。

迁移现有的 unlocker 集成

正向代理除了自己的 x-qp-* 标头,还接受两家最常见商用 unlocker 的控制标头写法,因此现有集成通常只需更换代理主机和凭据即可迁移。代理模式下,定向参数像住宅代理一样随用户名传递:国家、州、城市、会话、配置和层级。通过代理的 HTTPS 需要拦截证书,可用你的密钥从 API 下载。使用 x-qp-url 的直连模式和 REST 端点则完全不需要证书。

何时该用 Web Unlocker 而不是 Extract API

如果你想要的是 Markdown、HTML 或结构化 JSON 形式的页面,且不在乎它是如何抓取的,用 Extract API。如果你需要源站的原始响应,用 Web Unlocker:反爬虫墙后的 JSON API、提交表单的 POST、带你自己授权标头的请求、你自行管理的 Cookie 罐,或已经在用代理协议的现有爬虫。两者同属一个账户和同一张住宅网络;只有 Unlocker 从自己的预付费 GB 余额中计费。

常见问题

什么是 web unlocker?

Web unlocker 是一种服务,它接收普通的 HTTP 请求,并像真实浏览器那样把它送达受反爬虫保护的站点:从住宅 IP 出发,带着浏览器 TLS 指纹和相匹配的标头,被拦截时换新 IP 重试,遇到 JavaScript 挑战时使用真实浏览器。它返回源站的原始响应。

Web unlocker 和轮换住宅代理有什么区别?

代理只改变来源 IP。客户端的 TLS 握手和标头组合仍会暴露自动化工具,而这正是现代反爬虫墙打分的地方。Unlocker 把请求改写得与浏览器一致,被拒绝时换指纹重试,要求 JavaScript 时升级到浏览器。

Web Unlocker 能解验证码吗?

它用真实浏览器通过 JavaScript 挑战,并在粘性会话内保留 clearance Cookie,供对同一站点的后续请求使用。需要人工的交互式验证码不会被破解:响应会带着 captcha 标签和厂商名称返回,由你的代码决定下一步。

可以带自己的标头和正文发送 POST 请求吗?

可以。任何 HTTP 方法都会连同你的正文(文本或 base64)一起转发。Authorization、Cookie、Content-Type 和自定义 X-* 标头原样通过,只有身份标头会被改写。POST 只尝试一次,因为在收到响应后重放可能导致表单或订单重复提交。

Web Unlocker 如何计费?

按 GB 计费,从你在控制台为所用层级购买的预付费余额中扣除:住宅出口的 Premium 或运营商出口的 Mobile。所有传输的字节都计入,包括重试和浏览器渲染。余额耗尽时代理返回 402。当前每 GB 价格显示在控制台。

如果所有尝试后页面仍被拦截,会发生什么?

绝不会以静默成功的形式返回。REST 端点将 blocked 设为 true,并在页面旁附上拦截类别和厂商。正向代理会把以 2xx 返回的挑战变成带 x-qp-unlocker-blocked 标头的 502,而源站真正的 403、429 或 503 则原样转发。

可以在多个请求之间保持同一个 IP 吗?

可以。在请求正文或代理用户名中传入会话 ID,带该 ID 的每次调用都会在 3 到 1,440 分钟内从同一个出口 IP 发出。登录态、购物车或分页列表因此停留在同一身份上,而不是每页都换 IP。

需要安装证书吗?

只有通过经典正向代理走 HTTPS 时才需要,因为它要终止 TLS 才能改写请求;拦截证书可用你的密钥从 API 下载。目标放在 x-qp-url 标头中的直连模式和 REST 端点完全不需要证书。

可以从哪些国家出口?

Premium 层级使用与 Residential Premium 代理相同的住宅网络,支持在 200 多个国家和地区按国家、州、城市定向。Mobile 层级使用 4G/5G 运营商 IP。未设置国家时,出口由目标的顶级域名决定,默认回退到美国。

相关产品

Sources

如果你是 AI 代理

跳过营销内容。QuantumProxies.io 提供供 LLM 读取的站点地图、每个页面的 Markdown、免费 MCP 服务器,以及与代理同一余额计费的 API。

一条命令即可连接: npx -y quantumproxies-mcp