2023年7月6日发(作者:)
python模拟⽕车订票系统代码_Python3.6实现12306⽕车票⾃动抢票,附源码原标题:Python3.6实现12306⽕车票⾃动抢票,附源码Python(发⾳:英[?pa?θ?n],美[?pa?θɑ:n]),是⼀种⾯向对象、直译式电脑编程语⾔,也是⼀种功能强⼤的通⽤型语⾔,已经具有近⼆⼗年的发展历史,成熟且稳定。它包含了⼀组完善⽽且容易理解的标准库,能够轻松完成很多常见的任务。它的语法⾮常简捷和清晰,与其它⼤多数程序设计语⾔不⼀样,它使⽤缩进来定义语句。Python⽀持命令式程序设计、⾯向对象程序设计、函数式编程、⾯向切⾯编程、泛型编程多种编程范式。与Scheme、Ruby、Perl、Tcl等动态语⾔⼀样,Python具备垃圾回收功能,能够⾃动管理存储器使⽤。它经常被当作脚本语⾔⽤于处理系统管理任务和⽹络程序编写,然⽽它也⾮常适合完成各种⾼级任务。Python虚拟机本⾝⼏乎可以在所有的作业系统中运⾏。使⽤⼀些诸如py2exe、PyPy、PyInstaller之类的⼯具可以将Python源代码转换成可以脱离Python解释器运⾏的程序。最近在学Python,所以⽤Python写了这个12306抢票脚本,分享出来,与⼤家共同交流和学习,有不对的地⽅,请⼤家多多指正。话不多说,进⼊正题:这个脚本⽬前只能刷⼀趟车的,⼈数可以是多个,⽀持选取作为类型等。实现思路是r模拟浏览器登陆和操作,由于12306的验证码不好⾃动识别,所以,验证码需要⽤户进⾏⼿动识别,并进⾏登陆操作,之后的事情,就交由脚本来操作就可以了,下⾯是我测试时候的⼀些截图:第⼀步:如下图,⾸先输⼊抢票基本信息第⼆步:然后进⼊登录页,需要⼿动输⼊验证码,并点击登陆操作第三步:登陆后,⾃动进⼊到抢票页⾯,如下图这样的最后:就是坐等刷票结果就好了,如下图这样,就说是刷票成功了,刷到票后,会进⾏短信和邮件的通知,请记得及时前往12306进⾏⽀付,不然就⽩抢了Python运⾏环境:python3.6⽤到的模块:re、splinter、time、sys、httplib2、urllib、smtplib、email未安装的模块,请使⽤pip instatll进⾏安装,例如:pip install splinter如下代码是这个脚本所有⽤到的模块引⼊:刷票前信息准备,我主要说⼀下始发站和⽬的地的cookie值获取,因为输⼊城市的时候,需要通过cookie值,cookie值可以通过12306官⽹,然后在F12(相信所有的coder都知道这个吧)的network⾥⾯的查询请求cookie中可以看到,在请求的header⾥⾯可以找到,_jc_save_fromStation值是出发站的cookie,_jc_save_toStation的值是⽬的地的cookie,然后加⼊到代码⾥的城市的cookie字典city_list⾥即可,键是城市的⾸字母,值是cookie值的形式。抢票,肯定需要先登录,我这⾥模拟的登录操作,会⾃动填充12306的账号名和密码,当然,你也可以在打开的浏览器中修改账号和密码,实现的关键代码如下:登录之后,就是控制刷票的各种操作处理了,这⾥,我就不贴代码了,因为代码⽐较多,别担⼼,在最后,我会贴出完整的代码的。关于怎么快速学python,有什么⽅法,这个问题,想必⼤家都已经⼼中有数了,打算深⼊了解这个⾏业的朋友,可以加下⼩编的python学习裙:588+090+942,不管你是⼩⽩还是⼤⽜,⼩编我都欢迎,不定期分享⼲货,包括⼩编⾃⼰整理的⼀份2018最新的python资料和0基础⼊门教程,欢迎初学和进阶中的⼩伙伴。当刷票成功后,我会进⾏短信和邮件的双重通知,当然,这⾥短信通知的平台,就看你⽤那个具体来修改代码了,我⽤的是互亿⽆线的体验版的免费短信通知接⼝;发送邮件模块我⽤的是smtplib,发送邮件服务器⽤的是163邮箱,如果⽤163邮箱的话,你还没有设置客户端授权密码,记得先设置客户端授权密码就好了,挺⽅便的。以下是主要实现代码:说了那么多,感觉都是说了好多废话啊,哈哈,不好意思,耽误⼤家时间来看我瞎扯了,我贴上⼤家最关⼼的源码,请接码,⼤家在尝试运⾏过程中,有任何问题,可以给我留⾔或者私信我,我看到都会及时回复⼤家的:Python可以做什么?web开发和 爬⾍是⽐较适合 零基础的⾃动化运维 运维开发 和 ⾃动化测试 是适合 已经在做运维和测试的⼈员⼤数据 数据分析 这⽅⾯ 是很需要专业的 专业性相对⽽⾔⽐较强科学计算 ⼀般都是科研⼈员 在⽤机器学习 和 ⼈⼯智能 ⾸先 学历 要求⾼ 其次 ⾼数要求⾼ 难度很⼤返回搜狐,查看更多责任编辑:
发布者:admin,转转请注明出处:http://www.yc00.com/news/1688603269a154312.html
评论列表(0条)