提前准备Python 3.6.3
Chromedriver.exe
Chrome 浏览器安装好后需将chromedriver.exe放置于Chrome浏览器目录下
pip install selenium requests lxml
参数设置
在config.json中输入相应配置信息,具体说明如下:
date: 日期选择
sess: 场次优先级列表,如本例中共有三个场次,根据下表,则优先选择1,再选择2,最后选择3;也可以仅设置1个。
price: 票价优先级,如本例中共有三档票价,根据下表,则优先选择1,再选择3;也可以仅设置1个。
real_name: [1,2], 实名者序号,如本例中根据序号共选择两位实名者,根据序号,也可仅选择一位
选择一位或是多位根据购票需知要求,
若无需实名制信息则不需要填写,
若一个订单仅需提供一位购票人信息则选择一位,
若一张门票对应一位购票人信息则选择多位)。
nick_name: 用户在大麦网的昵称,用于验证登录是否成功
ticket_num: 购买票数
damai_url: https://www.damai.cn, 大麦网官网网址
target_url: https://detail.damai.cn/item.htm?id=599834886497 目标购票网址
部分门票需要选择城市,只需选择相应城市后将其网址复制到config.json文件的target_url参数即可。
根据需要选择的场次和票价分别修改config.json文件中的sess和price参数。
查看购票须知中实名制一栏,若无需实名制则config.json文件中的real_name参数不需要填写(即为[]);若每笔订单只需一个证件号则real_name参数只需选择一个;若每张门票需要一个证件号,则real_name参数根据需购票数量进行相应添加。
若是首次登录,根据终端输出的提示,依次点击登录、扫码登录,代码将自动保存cookie文件(cookie.pkl)
使用前请将待抢票者的姓名、手机、地址设为默认。
配置完成后执行python damai_ticket.py即可,注意观察控制台输出。
本代码为保证抢票顺利,设置循环直到抢票成功才退出循环,若中途需要退出程序请直接终止程序。