用 Python 代码自动抢火车票
市场上很多火车票抢票软件大家应该非常熟悉,但很少有人研究具体是怎么实现的,所以觉得很神秘,其实很简单。下面使用Python模拟抢票程序,给大家揭秘抢票到底是怎么回事。
该代码仅供参考,主要用于大家沟通交流,禁止用于商业用途。
具体代码如下,可以修改成自己的12306用户名账号:
准备工具
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,找到控件填充值:
找到用户名密码控件名
找到起始地控件名
确定起始地的值,方法Chrome浏览器中的“检查”功能(按F12),Network ---> Cookies中找到:
cookie中起始地的值
拷贝起始地的cookie值,我把几个常用的城市拷出来,放到了字典中:
查询车票代码:
其实,你只需要运行代码:
当然,还需要手动点一下的还是万恶的12306验证码,抢到票后确认支付就行啦。
抢票进行中
抢票成功!
转载自公众号【计算机与网络安全】,本文仅用于技术讨论。
更多相关文章阅读
http://www.taodudu.cc/news/show-6529274.html
相关文章:
- Python脚本实现12306火车票自动抢票回家or旅游
- Python3.6实现12306火车票自动抢票(内含源码)
- 基于Java语言的一次性动态口令算法TOTP
- 动态口令与数字证书简介
- 【密码产品篇】动态口令系统密钥体系结构(SM3、SM4)
- 使用mount命令挂载移动硬盘
- 挂载U盘和移动硬盘
- 2021美赛(4)美赛E题数据、思路、方法
- 美国青年以车会友 愿做两国交流的使者
- 你会跟谁结婚zz
- 人生太短,不要给自己贴上年龄标签
- 美国的儿童新娘:这世界的黑暗,又何止RYB?
- 美国没有剩女
- 美国东西岸创业公司的工作体验
- 大数据分析之美国人结婚的年龄
- brew 一直等待_LOL手游转圈怎么办_LOL手游一直转圈怎么办
- 神奇玫瑰花
- 网易云信携手美踏,打造偶像社交新范式
- 64位整数乘法 ab%p
- Python3 猴子偷桃
- python猴子偷桃 #题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第
- 猴子偷桃递推
- 猴子摘桃:猴子摘了x个桃,每天吃一半,最多吃一个,第7天吃的时候剩下一个了,猴子摘了多少桃子?(代码+分析)
- Python数学问题14:猴子偷桃
- 实例021:猴子偷桃 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上
- java 编程习题 之 猴子偷桃
- 面试编程题-猴子偷桃
- 【C语言训练】猴子偷桃
- 猴子吃桃子
- 猴子偷桃问题(C语言实现)
用 Python 代码自动抢火车票相关推荐
- python100行代码-100行Python代码自动抢火车票!
今年你不妨自己写一段代码来抢回家的火车票,是不是很Cool. 先准备好: 1)12306网站用户名和密码 2)chrome浏览器及下载chromedriver 3)下载Python代码,来自网络整理 ...
- python写抢火车票软件_用 Python 代码自动抢火车票
市场上很多火车票抢票软件大家应该非常熟悉,但很少有人研究具体是怎么实现的,所以觉得很神秘,其实很简单.下面使用Python模拟抢票程序,给大家揭秘抢票到底是怎么回事. 该代码仅供参考,主要用于大家沟通 ...
- 手把手|100行Python代码自动抢火车票!(包教包会)
http://www.gzhshoulu.wang/article/1418146Python爱好者社区 又到一年一度春运大会,2017年春运抢火车票还是那么难,各大互联网公司都推出抢票服务,只要加钱 ...
- 用python抢火车票_用 Python 代码自动抢火车票
市场上很多火车票抢票软件大家应该非常熟悉,但很少有人研究具体是怎么实现的,所以觉得很神秘,其实很简单.下面使用Python模拟抢票程序,给大家揭秘抢票到底是怎么回事. 该代码仅供参考,主要用于大家沟通 ...
- python12306抢学生票票下载,基于Python3.6+splinter实现自动抢火车票
本文实例为大家分享了python实现自动抢火车票,供大家参考,具体内容如下 splinter使用 首先介绍一下splinter使用: plinter.brower是一个开源工具,通过Python自动化 ...
- 100个必会的python脚本-100行Python代码实现自动抢火车票(附源码)
前言 又要过年了,今年你不妨自己写一段代码来抢回家的火车票,是不是很Cool.下面话不多说了,来一起看看详细的介绍吧. 先准备好: 12306网站用户名和密码 chrome浏览器及下载chromedr ...
- Python之——实现自动抢火车票(基于Python3.6+splinter)
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/79134306 splinter使用 首先介绍一下splinter使用: plint ...
- python抢火车票_听说你能用 Python 帮我抢火车票?!
原标题:听说你能用 Python 帮我抢火车票?! 文 | 车栗子 来源 |量子位公众号 想要十一回家的小伙伴们,大概刚刚经历了一波抢票大战. 顺便把一个Python抢票工具,送到了GitHub趋势榜 ...
- kite:Python 代码自动补全神器
kite:Python 代码自动补全神器 吃了 学习python的正确姿势 的安利:这个 Python 代码自动补全神器搞得我卧槽卧槽的. 代码自动补全还是挺舒服的嘿嘿嘿. 下面是官网下载给出的示例: ...
最新文章
- python编程代码示例_python编程线性回归代码示例
- ecshop分类页调用分类名称
- python PyQt5 QtWidgets.QWidget.setLayout()(将布局中的小部件重新父级化,以将窗口作为父级)
- hdu-1166敌兵布阵(树状数组)
- QT的QHBoxLayout类的使用
- 如何基于asp.net core的Identity框架在mysql上作身份验证处理
- 人事管理系统 数据流图_中国移动集中化人力资源管理系统试点上线成功
- 数字电路技术可能出现的简答题_2013年9月份考试数字电子技术第二次作业
- 还在这样学 Python?怪不得白费力!
- synchronized可重入锁
- Ubuntu 16.04 安装QQ, TIM
- Leetcode130. 被围绕的区域(深搜)
- Linux 设置ssh远程登录端口
- 能连蓝牙键盘吗_300多的小键盘,颜值很能打,GANSS ALT71蓝牙双模机械键盘很香...
- 爬虫 爬取百思不得姐网站
- Android手机图片上传 选择不了本地照片 解决方案
- Android手机电池不耐用,手机电池用久了不耐用?教你几招让它“起死回生”!
- 手把手教你如何在广交会使用OBS直播丨汇信外贸软件
- Java实验报告之java面向对象编程
- Java行业2019年的发展前景