python写抢火车票软件_用 Python 代码自动抢火车票

news/2024/10/22 18:27:37/

3dcbcfea4ae2e530c4289165c12eecf8.png

市场上很多火车票抢票软件大家应该非常熟悉,但很少有人研究具体是怎么实现的,所以觉得很神秘,其实很简单。下面使用Python模拟抢票程序,给大家揭秘抢票到底是怎么回事。

该代码仅供参考,主要用于大家沟通交流,禁止用于商业用途。

具体代码如下,可以修改成自己的12306用户名账号:

a9ef97529831c94c784d585d785feb12.png

准备工具

12306网站用户名和密码

Python

chrome浏览器及下载chromedriver

下载Python代码,位于:https://github.com/ppy2790/tickets

代码用的Python+Splinter开发,Splinter是一个使用Python开发的开源Web应用测试工具,它可以帮你实现自动浏览站点和与其进行交互。Splinter官网

http://splinter.readthedocs.io/en/latest/ 。Splinter执行的时候会自动打开你指定的浏览器,访问指定的URL。然后你所开发的模拟的任何行为,都会自动完成,你只需要坐在电脑面前,像看电影一样看着屏幕上各种动作自动完成然后收集结果即可。

了解原理

找到相应URL,找到控件模拟登录、查询、订票操作。关键是找到控件名称,难点是起始地不是直接输入的页面值,需要在cookie中查出。

12306查询URL:https://kyfw.12306.cn/otn/leftTicket/init

12306登录URL:https://kyfw.12306.cn/otn/login/init

我的12306URL:https://kyfw.12306.cn/otn/index/initMy12306

购票确认URL:https://kyfw.12306.cn/otn/confirmPassenger/initDc

Python代码打开URL,找到控件填充值:

283c51f4aa5e1980c7a005b468935604.png

97db4956aa8c07065d9f050e3344ca87.png

找到用户名密码控件名

8748f8c4e8ccc1d00e37bfad88d0e2f5.png

找到起始地控件名

确定起始地的值,方法Chrome浏览器中的“检查”功能(按F12),Network ---> Cookies中找到:

ed9eade1126ebf021f0994cb0bfc3691.png

cookie中起始地的值

拷贝起始地的cookie值,我把几个常用的城市拷出来,放到了字典中:

7050aa60b95f6803edf8dfe8a4ada574.png

查询车票代码:

033b247373792d221b73a738f9dee83f.png

其实,你只需要运行代码:

ae0195e3f3b280e919d6f100036e6cd1.png

当然,还需要手动点一下的还是万恶的12306验证码,抢到票后确认支付就行啦。

2aa5e1dea0f2534651606df7bed49c22.png

抢票进行中

92b96b8fe245a2baba8d1a8e574c7356.png

抢票成功!


http://www.ppmy.cn/news/918463.html

相关文章

python编写12306窗体抢票软件(一)

python编写12306窗体抢票软件(一) 第一次写博客,拿写过的软件练个手~ 12306是学习爬虫的比较好的一个练手网站。本文带你重零开始编写一个python窗体,十分简单,小白进来看哈~这节只说怎么编写窗体界面,下节…

线程实现火车票抢票程序

<span style"font-size:14px;">package H13; /*** 编写程序&#xff0c;实现火车票抢票程序&#xff0c;初始共50张车票&#xff0c;有三个线程进行处理&#xff0c;* 分别间隔10ms、20ms、50ms抢一张票&#xff0c;在车票数量为0时&#xff0c;就不再继续抢票…

python开发抢票软件_12306抢票软件run python版

12306抢票软件run全新推出&#xff0c;基于python爬虫打造12306抢票神器&#xff0c;目前支持全自动打码候补车票&#xff0c;只要根据提示将12306打包成exe可执行文件,即可轻松使用~最近12306的反爬机制检测系统比较狠&#xff0c;小伙伴们刷票时长可以设置长一点&#xff0c;…

抢票软件项目开发

项目需求分析 整个项目应实现&#xff1a;浏览器自动登录12306网站,查询余票,车票预订,到自动提交系统支付的功能。 具体包括&#xff1a;登录界面的cookie处理(保持登录界面)、登录时的验证码处理、余票查询、提交订单等部分。 分析&#xff1a; 借助工具fiddler,作为整个数…

c语言编写一个火车票,C语言-多线程抢火车票软件

//今晚内容&#xff1a;C语言-抢火车票软件 //讲课老师&#xff1a;范志军 QQ&#xff1a;208824435 #include #include HANDLE hMutex;//互斥锁变量 int a50;//设定50张车票 DWORD WINAPI Func(LPVOID lpParamter)//多线程的功能 { while(a>0) { WaitForSingleObject(hM…

【Python抢票神器】火车票枪票软件到底靠谱吗?实测—终极攻略。

导语 每年的节假日一到&#xff0c;大家头疼的总时同一个问题&#xff1a;你买到回家的票了吗&#xff1f; 尤其是大型的节日&#xff1a;”比如国庆、春节......“ 数以亿计的人口迁移&#xff0c;让车票成了一年里最难买到的那张票。 跨站买票、买短途票上车补票、准点捡漏…

火车票自动抢票新功能上线了!堪比抢票神器

端午节假日越来越近了&#xff0c;小编已开始频频收到好友们的助力抢票请求了。 假日出行回家已经迫不及待却抢不到火车票&#xff0c;各种加速软件层出不穷缺又抢不到十分尴尬&#xff0c;甚至还要花费一笔额外的加速费用…… 不过现在不用担心了&#xff0c;近日&#xff0c;…

欢迎随时回家——python制作一个火车票抢票版本(附完整代码,仅供学习参考)

嗨害大家好鸭~我是小熊猫&#x1f5a4; 今天教大家用Python制作一个12306查票程序脚本&#xff08;仅供学习参考&#xff09; 有什么python相关报错解答自己不会的、或者源码资料/模块安装/女装大佬精通技巧 都可以来这里&#xff1a;&#xff08;https://jq.qq.com/?_wv1027…