type
status
date
slug
summary
tags
category
背景
- 亚运会热门赛事项目(如羽毛球、游泳)一票难求。官方的「转售」玩法很好地防止了黄牛党加价倒卖。这点要给官方票务点个大大的赞👍🏻
- 但转售专区有个巨大的 bug,让我们在购买转售票时非常痛苦。当我们好不容易刷到一张票,点击了「立即购买」按钮后,每次都会出现一个强制的 10s 的阅读须知。等你翻到页面底部,等到10s 过后进入购买页面,黄花菜都凉了。


- 有没有一种方式,能在合法合规、不 hack 接口的前提下,真正「凭手速」抢票呢?
实现思路
- 一般在产品设计上,这种阅读须知对后续行为的禁用限制,都是在前端完成的。也就是说,是否看完了阅读须知,并不是一个需要和后端服务器交互的校验项。
- 对于亚运售票平台是否也是这样呢?我们需要验证一下。好消息是,经过浏览器开发者模式中对 network 请求记录的查询,可以基本做实这个结论。这是一切操作的前提。
- 首先,我们需要知道某个项目什么时候有新的转售门票。在新的转售门票被发布后,我们应该第一时间知道,并进入对应的销售页面。
- 其次,我们需要有个办法,能够缩短阅读须知的等待时间,或者更干脆地,直接绕过这个流程,直接进入售票页面。
- 最后,由于热门项目的火爆程度,上面这个流程需要完成的非常快——最好在几秒内。这样抢到票的几率就会大大提升。
- 我们可以借助 mac 自带的工具比如快捷指令完成一系列操作
思路有了,接下来就是开干了!
第一步:页面监控——知道什么时候有票可买
1.1 获取所需项目的转售列表页面
每个项目都有个对应的转售列表页面。地址格式如下,项目不同对应结尾不同的 id


注意:
只有在这个项目有转售门票的时候,才能通过转售专区的入口进入项目地址。即使后续这个项目转售门票售罄,你也依然可以使用这个地址访问该页面。
也就是说,如果这个项目一直蹲不到票,你可能找不到这个项目对应的转售列表页面。(如果你有办法,欢迎留言)
1.2 通过 Distill 监控地址变化
Distill 是一款非常受欢迎的网页监控工具,可以用来监控页面的指定区域内容是否变化。当该区域内容变化时,采取一系列行动
操作方法:
这里以大热门项目羽毛球为例
- 前往 Distill Web Monitor 官网,安装 Dstill。推荐使用浏览器插件版本
- 添加 Monitor,选择「web」

- 在新开 tab 中,输入上一步中获得的转售列表页面,点击「选择元素」
- 鼠标悬浮至列表区域,直到出现黑色外框,单击选中
- 点击「保存选择」

- 设置参数
- 设备:指在哪里运行这个监控。Distill 支持四种监控渠道,这里推荐使用「Chrome」这个选项。(原因看这里)
- 安排:指间隔多久查询一次页面。建议设置一个 5~10 秒的随机值
- 操作:指检测到页面变化后,需要触发的操作。建议添加播放声音+弹出通知+打开页面

- 完成创建,开始监控
当转售列表页面有新的转售门票出现时,Distill 便会播放声音,弹出通知提示并自动打开转售列表页面
踩坑
- 本着能解耦就解耦的原则,原本希望这个监控能和平时正常使用浏览器分隔开,于是一开始「设备」选项这里选择「desktop app」单独开 app 进程跑监控

- 后来发现,这个 app 有个坑——打开指定 url ,然后点击某个按钮页面内容会刷新,但界面显示的 url 还是不变。

- 这导致无法在这个页面快速获得 entrustRecordId,后续流程跑不起来
- 所以还是得回归到使用「chrome」

第二步:通过快捷指令拼接订单 url——绕开10s阅读须知
我们要卡的 Bug 是,在确定场次后,转售列表页面和订单提交页面的 entrustRecordId 是一致的。
因此,我们可以利用这个特性,通过拼接 url 的方式快速前往到提交订单页面——从而绕开 10s 的阅读须知——快速选择观赛人,提交订单
操作方法:
- 打开 Mac 中的「快捷指令」
- 新建快捷指令,内容如下:

- 给快捷指令设置快捷键。这个看个人偏好,我设置的是「option+cmd+D」
至此,所有设置项就设置完成了。让我们看看效果
最终效果——4 秒抢到票
- 当 Distill 监控到有新的转售门票时,会发送提醒并打开专区的页面

- 手动点击场次,并复制地址栏中的entrustRecordId 【耗时约 1s】
- 手动操作快捷键,根据entrustRecordId生成并打开订单页面 【耗时约 1s】
- 添加观赛人、提交订单,抢票成功!【耗时约 2s】
提交订单后,直到支付完成,你的票都会处于锁定状态,所以不用担心付款慢了票没了。

最后,祝大家都能抢到自己心仪的票!
- 作者:Ryan
- 链接:https://blog.gaoran.xyz/article/asian_games_ticket_strategy
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。