Python3实现抢火车票功能(中)
本文转载至知乎ID:Charles(白露未晞)知乎个人专栏
下载W3Cschool手机App,0基础随时随地学编程>>戳此了解
导语
在“python抢火车票(上)”一文中我们完成了项目内容1和项目内容2,即利用python实现火车/高铁票查询功能以及利用python实现抢火车/高铁票功能,今天我将带大家完成项目内容3,即对项目内容1和项目内容2进行优化。
本期任务
完成项目内容3,即对项目内容1和项目内容2进行优化。
开发工具
python版本:3.5.4(64bit)
chromedriver_win32版本:2.3.4
chrome版本:65.0.3298.4
相关文件
百度网盘下载链接: https://pan.baidu.com/s/1qA1Bhd30lMa1ZyLUowg8oQ
密码: fxxp
项目内容3
相关模块:
requests模块、prettytable模块、splinter模块以及python自带的一些基本模块。(相关模块均使用pip安装即可)
主要改进:
(1)出发地和目的地cookie值自动生成,无需再手工查找;
(2)将项目内容1和项目内容2功能进行合并;
(3)使用方式更加简便与人性化;
(4)增加了抢票成功后语音提示功能;
(5)避免了更多由于用户非法输入引起的程序异常;
(6)增加了抢票成功后邮件提示功能,但由于邮件发送容易失败所以我将该部分代码注释掉了,有需要者可自行修改(最后做成Demo时我会添加邮件提示功能的)。
具体原理请参考相关文件中的源代码,本人已进行了较为详细的注释。
环境搭建:
安装python(添加到环境变量)并pip安装相关的第三方库,最后将相关文件中提供的chromedriver.exe文件放在python安装文件夹中的Scripts文件夹内。
使用方式:
在cmd中运行后根据提示输入相关信息即可。
使用演示:
(1)查询功能:
(2)抢票功能:
抢到票之后我们需要手动打开12306官网或者官方APP在未完成订单中进行支付后购票:
最终代码:
见相关文件。
下期预告
完成项目内容4并进一步对代码进行优化。
更多建议: