跳到主要内容
NexCaptcha

解决方案

出行与票务价格采集中的验证码

航司与 OTA 站点的防护等级是全行业最高的一档,Akamai 与 PerimeterX 很常见。按站点选对识别类型是成功率的关键。

适合谁

机票比价与元搜索产品、企业差旅与 TMC 的价格稽核团队,以及做竞价监控的酒店收益经理。采集按航线乘日期乘舱位扇出,一个市场还没看到价格就已经是几千个请求。这类团队多数已经用自研方案失败过一次。

要解决的问题

一条订票链路上可能同时叠着 Akamai、PerimeterX、DataDome 和 Cloudflare,而航司按地区和会话动态定价,缓存这条路走不通。每个航线加日期加舱位的组合都是一次独立请求,量大到 2% 的识别失败率就会直接反映在结果页上,最低价那一条是错的。这个行业有真实的诉讼先例,数据获取必须以授权、合同或许可为前提。

  • 航线、日期、舱位的扇出能跑完,不用人工重启
  • Akamai、PerimeterX、DataDome 由同一个客户端处理
  • 最低价结果基于完整样本计算
  • 识别失败能定位到具体航司,不只看整轮统计

配合使用

  • Playwright
  • Puppeteer
  • curl_cffi
  • Scrapy
  • Airflow
  • Kubernetes

[ 04 ]关于这一项的常见问题

关于这一项的常见问题

航司自有站点多见 Akamai Bot Manager 和 Imperva,OTA 更常见 DataDome 和 PerimeterX,前面还经常套一层 Cloudflare。一条订票链路的不同步骤上同时跑两套防护是常态。

通常不是。下发的 cookie 绑定会话和一组 header,中途换出口 IP 或者换客户端指纹,下一步就会再弹一次。识别、proxy、会话三者要绑在一起用。

按不为零的失败率做,而且要能按航司分别看到,不要只看一个总平均。每个题型页都公布了实测识别成功率,重试策略按这个数字设定。

不可以。航司在这个领域已经打赢过访问权限相关的诉讼,我们要求采集在分销协议、授权数据源或允许采集的公开条款范围内进行。

第一千次识别,我们请。

创建密钥,粘进上面的示例代码,看着真实的 token 返回。不用绑卡,没有销售电话。