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:\Users\xxxxe\Desktop\12306-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:\Users\xxxxe\Desktop\12306-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的小伙伴,也希望看到我写的文章的小伙伴,多多支持我,谢谢!

原文地址:https://www.cnblogs.com/yunsi/p/12118523.html

时间: 2024-10-19 14:29:04

12306购票的testerSunshine带源码刷票的相关文章

VC++环境下多文档模板应用程序开发(带源码)

我们以前见到的关于VC++环境下利用APP Wizard 自动生成的MDI的应用程序只支持打开同一文档类型的多个文件,但是不能够同时打开不同种类型的文档.网上的这种公开资料比较少,我在知网上查阅了相关的资料.下面我根据这些资料做一下总结(辛辛苦苦一个一个字码出来的). 下面设计一个能够处理两种文档类型的应用程序:第一种文档类型:TXT文档,第二种文档类型:Bub的文档类型. 第一种的文档类型TXT,是利用APP Wizard自动生成的,只不过是在设置的时候将文档类型设置为TXT类型,并且使生成的

MyEclipse使用总结——使用MyEclipse打包带源码的jar包

平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不到jar包里面的类的源码了,所以也就无法调试,要想调试,那么就只能通过关联源代码的形式,这样或多或少也有一些不方便,今天教大家一种打包jar包的方式,让jar包当中既有编译好的class,又有class对应的源代码,这样在其他项目中使用打包好的jar包时,就可以直接看到class的源代码了,也可以直接进行源码调试,不再需要额外关联源代码了,具体做法如下: 假如有一个如下图所示的项目 现在我们需要将src目录下的ja

Spring MVC 4 文件下载实例(带源码)

[本系列其他教程正在陆续翻译中,点击分类:spring 4 mvc 进行查看.源码下载地址在文章末尾.] [翻译 by 明明如月 QQ 605283073] 原文地址:http://websystique.com/springmvc/spring-mvc-4-file-download-example/ 上一篇:Spring MVC 4 使用常规的fileupload上传文件(带源码) 本文将为你展示通过Spring MVC 4实现文件下载. 下载一个文件比较简单,主要包括下面几个步骤. 创建下

c# winform 中的 工具栏自动隐藏 splitter用法 带源码

代码下载地址 http://download.csdn.net/detail/simadi/7649313 c# winform 中的 工具栏自动隐藏 splitter用法 带源码,布布扣,bubuko.com

Spring MVC 4使用Servlet 3 MultiPartConfigElement实现文件上传(带源码)

[本系列其他教程正在陆续翻译中,点击分类:spring 4 mvc 进行查看.源码下载地址在文章末尾.] [翻译 by 明明如月 QQ 605283073] 原文地址:http://websystique.com/springmvc/spring-mvc-4-file-upload-example-using-multipartconfigelement/ 上一篇:Spring MVC 4 使用常规的fileupload上传文件(带源码) 下一篇:Spring MVC 4 文件下载实例(带源码)

Spring Security 4 使用@PreAuthorize,@PostAuthorize, @Secured, EL实现方法安全(带源码)

[相关已翻译的本系列其他文章,点击分类里面的spring security 4] 上一篇:Spring Security 4 整合Hibernate 实现持久化登录验证(带源码) 原文地址:http://websystique.com/spring-security/spring-security-4-method-security-using-preauthorize-postauthorize-secured-el/ 本文探讨Spring Security 4 基于@PreAuthorize

Spring Security 4 基于角色的登录例子(带源码)

原文网址: http://websystique.com/spring-security/spring-security-4-role-based-login-example/ [相关已翻译的本系列其他文章,点击分类里面的spring security 4] [翻译by 明明如月 QQ 605283073] 上一篇: Spring Security 4 安全视图片段 使用标签(Spring Security 标签) 下一篇: Spring Security 4 Hibernate整合 注解和xm

【百度地图API】多家地图API内存消耗对比测验(带源码)

原文:[百度地图API]多家地图API内存消耗对比测验(带源码) 任务描述: 啊,美妙的春节结束了.酸奶小妹和妈妈的山西平遥之旅也宣告成功!距离平遥古城7km,有一个同样身为“世界文化遗产”的寺庙,叫做“双林寺”.双林寺的精致.纯木质结构.保存完好等特点,让我不由得为之一振.这让我想到了,万事万物都需要对比,“取其精华,去其糟粕”. 双林寺如是,API也如是.这不,上班第一天,我就迫不及待地做起了API性能测试. 如何实现: 使用不同家的API,分别以随机新增覆盖物为测试用例,观察内存消耗变化.

使用MyEclipse打包带源码的jar包

平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不到jar包里面的类的源码了,所以也就无法调试,要想调试,那么就只能通过关联源代码的形式,这样或多或少也有一些不方便,今天教大家一种打包jar包的方式,让jar包当中既有编译好的class,又有class对应的源代码,这样在其他项目中使用打包好的jar包时,就可以直接看到class的源代码了,也可以直接进行源码调试,不再需要额外关联源代码了,具体做法如下: 假如有一个如下图所示的项目 现在我们需要将src目录下的ja