🚀 高级用法
⏰ 时间同步策略
CPPRush使用NTP服务器进行时间同步,确保抢票时机精准。
自定义NTP服务器
如果默认的NTP服务器(ntp.aliyun.com
)访问不稳定,你可以修改源码中的NTP服务器设置:
python
# 在 tool/TimeService.py 中修改
def __init__(self, _ntp_server="your.ntp.server.com") -> None:
self.ntp_server = _ntp_server
# ...其他代码不变
常用NTP服务器
服务器地址 | 提供方 | 特点 |
---|---|---|
ntp.aliyun.com | 阿里云 | 国内访问快速 |
cn.pool.ntp.org | NTP池 | 多服务器负载均衡 |
time.windows.com | 微软 | 稳定可靠 |
理解时间偏差
程序会计算本地时间与NTP服务器时间的偏差,并在抢票时自动补偿这个偏差。时间同步成功后,会显示类似如下信息:
时间同步成功, 将使用ntp.aliyun.com时间
设置时间偏差为: -0.12345秒
负值表示本地时间比标准时间慢,正值表示本地时间比标准时间快。
自定义请求频率
理解请求间隔
抢票间隔决定了程序发送请求的频率。间隔越小,请求频率越高,理论上抢票成功率越高,但也越容易触发服务器的风控机制。
一般建议的间隔范围:
- 普通抢票:300-500毫秒
- 热门票抢票:300-400毫秒
- 极限模式:100-200毫秒(风险较高)
调整重试策略
如果你了解Python编程,可以修改重试机制。在cli/go.py
文件中找到以下代码:
python
@retry.retry(exceptions=RequestException, tries=60, delay=interval / 1000)
def inner_request():
# ...代码内容
你可以调整tries
参数(最大重试次数)和delay
参数(重试延迟)。
消息推送配置
Server酱配置
- 访问 Server酱官网
- 注册并获取SendKey
- 在CPPRush中配置该SendKey
- 抢票成功后,将收到微信通知
PushPlus配置
- 访问 PushPlus官网
- 注册并获取Token
- 在CPPRush中配置该Token
- 抢票成功后,将收到微信或其他平台通知
安全性建议
保护配置文件
配置文件和cookies包含敏感信息,建议:
- 不要将配置文件分享给他人
- 定期更新密码
- 使用完毕后考虑清除配置文件
降低风控风险
为避免账号被风控,建议:
- 避免同时使用多个设备登录
- 不要设置过低的请求间隔
- 避免频繁登录/注销操作
- 有条件可使用熟悉的IP地址环境
为开发者的高级功能
如果你有Python开发经验,可以考虑:
- 克隆项目代码进行定制化开发
- 添加新的通知方式(如电子邮件、钉钉等)
- 改进UI界面,添加图形用户界面
- 修改抢票逻辑,实现更复杂的抢票策略