如何用python编写火车抢票助手

前几天跟朋友说打算写一个抢票助手,最后由于某些原因念头打消了。

可就在昨天晚上,才隐约记起一年前的自己曾经说过:一年后我一定要写一个12306的抢票助手!瞬间激情澎湃,甚至已经是快临近凌晨时便开始动工,可天意不能违,12306晚上11点便开始维护,后续阶段程序不得不暂停;只能今天继续完成最后一部分,幸好自己进度还是可以的,刚刚debug完毕就给大家分享一下!

开头肯定是老套路

首先我们要安装python的编译环境,推荐使用python3.6(本文章使用的是python3);

python下载安装网址:https://www.python.org/

安装python的第三方工具库selenium

selenium是Web 应用程序自动化测试工具,可模拟人为操作实现自动化的强大的工具库

第二步:

下载chrome自动化驱动,链接:

chrome自动化驱动与chrome浏览器版本是有相对应的版本;chrome浏览器最新版本对应驱动版本2.35

具体驱动与浏览器版本映射表查看链接:

http://blog.csdn.net/huilan_same/article/details/51896672

第三步:进入主题,编写代码

引入库文件

编写主要代码

乘车人姓名要预先在12306网址上存在,并且要按红色方框内容填写

编写一个判断xpath是否存在的函数XpathExist(driver,xpath)

编写登录12306函数login(us,pw)

编写12306查询函数query()

难点:主要就在输入出发站跟目的站,12306反爬技术很强大,自己在这里调试了两个小时,最后发现要先点击一下,再清除内容,再输入内容,再按键盘Down键,最后再按tab键才可以;时间则要用js处理。

抢票函数buyTicket()

确认购票confirm()

由于想到这几天大家要开始第一轮抢票模式,所以刚刚写完的程序,没有经过大量测试,我便匆匆忙忙发布上来供大家分享;如果在使用中发现有bug,欢迎在本公众号后台留言,我会及时的处理!

为了不懂编程的小伙伴,同时我也对应发布了可执行的exe文件。

祝大家抢票成功!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180201G0OVQK00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励