12306购票的testerSunshine带源码刷票

Posted yunsi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了12306购票的testerSunshine带源码刷票相关的知识,希望对你有一定的参考价值。

  testerSunshine:这款开源 12306 智能刷票,订票项目是基于 Python 语言编写,可在 Windows 或者 Linux 操作系统下运行,其主要功能包括:自动登录、抢准点预售车票、捡漏票、智能候补票、邮件通知等。

  源码附件:https://github.com/testerSunshine/12306

  原理步骤如下:

  技术图片

 

 实现这个抢票功能所需要安装的基本软件python,chromedriver(谷歌驱动,自动化驱动谷歌浏览器的一个驱动,python作为自动化操作谷歌的一个自动化程序):

1、首先在win10电脑或者服务器安装python3.6-3.7.4版本的python,安装时候记得点上自动更新到path环境变量下。可参考https://www.jb51.net/article/173502.htm

2、在win7安装python2.7.9-2.7.15版本的python

技术图片

 

3、这是谷歌版本与对应的chromedriver版本,查看谷歌版本可打开设置查看,可参考https://blog.csdn.net/BinGISer/article/details/88559532 

4、在https://github.com/testerSunshine/12306下载源码压缩包,推荐放在桌面上

技术图片

 

 5、在cmd进入到这个文件夹里,下载这些依赖库,等待十多分钟左右:

  cd  C:UsersxxxxeDesktop12306-master

  pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

6、配置信息文件

  打开TickerConfig.py(推荐使用notepad++)

  需注意两个地方:

  邮件的填写内容,授权码写到password里,不是填qq密码,可参考https://jingyan.baidu.com/article/90895e0f2af42664ec6b0b14.html

  技术图片

 

   chromedriver(这个路径最好不要有中文,我习惯将chromedriver放到谷歌程序同级目录下)

技术图片

 

 

技术图片

 

 如果路径有带中文的话,需要转义符,故字符串前面应该加上r。

7、卸载tensorflow默认版本,安装指定版本

  进入cmd

  pip uninstall tensorflow

  pip3 install tensorflow==1.15.0rc -i https://pypi.tuna.tsinghua.edu.cn/simple/

8、运行程序

  cd  C:UsersxxxxeDesktop12306-master

  python run.py c       (加载cdn)

  python run.py t        (测试邮件收到信息)

  python run.py r        (运行抢票程序)

9、如果做完以上操作,在python run.py r出现错误的话,可以根据报错原因查看出错地方,一般都是依赖库,配置信息文件的问题。我总结一下我出错的内容和解决方法:

1)看这个302报错,很明显用户已经登录进12306了,那就是代表依赖库没问题,问题出现在配置信息文件里的登陆后的操作,比如:输入出发时间,出发地,目的地,车次信息等,可以在TickerConfig.py里检查格式问题,注意:出发时间一定是(2020-01-09,年份必须四位数,月日必须两位数)

技术图片

 

 2)如果检查配置文件没有错误,还是出现302错误,可以将https://www.12306.cn/index/+url拼接后,浏览器访问。如果是网络出错,那么你现用的ip很有可能被封了,因为你的请求过密会容易被12306官网封掉,可以换其他wifi,改ip再重试。

技术图片

 

 技术图片

 

 

技术图片

 

 这是能够成功运行的界面。

以上为本人测试可用的12306源码抢票脚本,很感谢分享到github的小伙伴,也希望看到我写的文章的小伙伴,多多支持我,谢谢!

以上是关于12306购票的testerSunshine带源码刷票的主要内容,如果未能解决你的问题,请参考以下文章

12306购票构造时间参数以及下单购票

12306怎么在线选座位 12306动车购票在线选座位的方法

爬虫实战12306购票抓包分析以及任务分解

12306购票网站终于启用可信的HTTPS数字证书

12306购票解析车站信息以及车辆信息

12306上一个人正常购票,另一个人用积分兑换怎样才能座位在一起?