3 步跑通 biliTickerBuy:B站会员购不必再拼手速
【免费下载链接】biliTickerBuyb站会员购购票辅助工具项目地址: https://gitcode.com/GitHub_Trending/bi/biliTickerBuy
开售那一秒,你刷新的页面已经显示"已售罄"。B站会员购,这个场景劝退过太多人。biliTickerBuy 是一款开源的 B站会员购自动抢票工具:你告诉它目标商品和开售时间,守夜、下单、失败重试、结果推送都由程序接管,你只负责在订单生成后扫码付款。这篇文章先说"怎么跑起来",再说"它替你盯盘时到底在干什么"。
🚀 三步跑通:装、登录、配任务
安装路径有四条,按你的环境挑一条就行:
| 安装方式 | 适合谁 | 要不要 Python 环境 | 怎么更新 |
|---|---|---|---|
| 预构建包(exe / 二进制) | Windows、主流 Linux、macOS,默认推荐 | 不要 | 跑包内更新脚本,或重新下载替换 |
| 一行安装脚本 | Linux / macOS 命令行用户 | 不要 | 重跑一次脚本,或用包内 update.sh |
| PyPI 包 | 开发者、需要频繁升级的环境 | 要,3.11 及以上 | 重跑带--upgrade的 pip 命令 |
| Docker | 其他 Linux 发行版、服务器部署 | 不要 | 拉新镜像后重启 |
最省事的路线是 PyPI 包,两条命令:
python -m pip install --upgrade bilitickerbuy btbbtb是程序注册的命令,执行后会启动一个 Gradio Web 界面,浏览器打开就是分区的操作面板。不想碰图形界面的话,还有无头模式btb buy --config-file 你的配置.json,适合丢在服务器上跑。系统要求、各平台下载方式都在 docs/installation.md 里写清楚了。
装好后,配置其实就两步。第一步登录:在界面里扫码登录 B站账号,或者粘贴现成的 Cookie,登录态存在本地,多账号之间可以随时切换。第二步配任务:把会员购商品链接贴进去,界面会自动解析出项目名称、在售场次、购票人和收货信息,你确认场次、数量和开售时间,然后启动。程序会生成一份 JSON 配置文件,之后可以直接复用它,个别字段还能用命令行参数或BTB_*环境变量覆盖,写脚本的人会很顺手。
开售后,它实际替你做了什么
⏱️ 时间听谁的:用服务器口径,不用你本机
自动抢票里最反直觉的一点是"时间以谁为准"。你电脑时钟快几秒慢几秒,直接决定是先手开枪还是被拦。时间同步逻辑在 util/TimeUtil.py:程序会向多个公网 NTP 源(含阿里、腾讯源)发查询,再拿 B站响应头里的 Date 交叉核对,取中间值做基准。倒计时跟着服务器时间走,你的本机时钟快慢不再影响出手时机。
等待开售的这段时间,它也不是干等。task/buy.py 里的主体循环会提前完成下单 token 的预准备和 HTTP/2 连接预热,并周期性复检商品详情;普通商品若中途被官方标记为热门项目,程序会自动升级对应的抢票策略。还可以开启"立即购票校验",在开售前提前几秒轮询购票页状态,确认购买按钮真正可用才开始下单——免得倒计时归零了页面却还没开。
🧯 请求挂了怎么办:退避、换代理、重新准备
热门商品开售时,服务端限流是常态。程序默认每秒一次下单(间隔可调),批量发起下单请求,429 限流触发退避,412 风控进入代理切换路径,这些状态机都跑在主循环里,不需要你在界面上手动盯。
代理池是这里最实用的配置:可以填多个以逗号分隔的代理,某个代理连续失败就进冷却期,下一个顶上;也可以把proxy_api_url指向代理服务商的 API,池子不够自动补货。还有更极端的玩法——用带 JA3 指纹的 HTTP/2 客户端,把下单请求分散到多条本地链路。token 过期(100001 错误码)时程序会自动重新准备再继续,不会中断当前轮次;担心代理池打空,可以勾选在耗尽时给你发推送。
📣 订单生成的那一刻:二维码和推送先到
抢票最紧张的时刻其实是下单成功后的十几秒——得在时限内付款。程序创建订单成功后会立刻拉取支付二维码和支付链接,显示在界面里,默认还会自动打开。
同时通知推送开始工作。util/notifer/Notifier.py 统一处理各个渠道:Bark、PushPlus、ServerChan、ntfy、Telegram,外加本地声音,可以多个渠道同时开;每个请求都带连接和读超时,发送失败带退避重试。有个细节值得说:任务启动时,程序会先给已配置的渠道各发一条"抢票预检"消息,你收到就说明推送链路是通的,正式抢票时不用临场再验证。B站订单有保留时限,下单后 10 分钟内推送会持续提醒你,防止订单悄悄过期。
按开始按钮之前,几句实在话
- 频率不是越高越好。默认 1 秒间隔是平衡值,非极热商品硬怼高频,只是徒增自己被风控的概率。
- 真抢之前先跑一遍全流程。确认登录态、看预检消息、用一个假时间把任务跑通,确认倒计时、通知、二维码都能正常出,再换成真实开售时间。
- 账号和请求节奏是你自己的事。多账号可以配,但每个账号的风险状况要自己把握;工具本身非侵入式,高频请求终究是你的行为,遵守平台规则是底线。
- 仅限学习和研究用途。项目采用 PolyForm Noncommercial 许可,明确禁止商业用途和代抢倒卖,使用后果自行承担,这条别当耳旁风。
接下来你可以做什么
- 先在界面里把流程跑熟,再写一份配置文件,熟练后就切到
btb buy无头模式,放到一台 7x24 在线的机器上。 - 需要多机分发或更高并发,可以看作者另立的分布式项目 biliTickerStorm,是独立仓库,不在本仓库内。
- 想搞懂内部机制,主体循环在 task/buy.py,所有参数定义和默认值集中在 interface/config.py,对着配置表读比读代码快。
- 界面里自带更新页,预构建包也有更新脚本,热门商品开售之前,值得把版本升一下。
它是那种装好一次、能进工具箱的工具。别指望它包办所有事,但"盯着开售那一秒"这件事,它确实比人可靠。
【免费下载链接】biliTickerBuyb站会员购购票辅助工具项目地址: https://gitcode.com/GitHub_Trending/bi/biliTickerBuy
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考