抢票的软件已经泛滥了,北大青鸟出来的,写过几行程序的人都能做出抢票软件来。因为一个网站的前端代码都摆在那,把html和js代码抓下来一个一个读一遍,就能对订票的流程了如指掌。用到的无非是GET后者POST,如果实在觉得读代码太费劲,或者有人说老夫不懂html、js,那也没关系。随便找个http抓包的软件开着,把订票的流程跑一边,看看提交数据的格式,然后自己就可以去伪造了。fiddler2就是这样的抓包工具,不管你是普通明文的http包还是加密的https包,统统拿下。

Fiddler2抓取的12306登录请求

我想大家应该很容易猜到每个字段的意思,然后想干什么就可以干什么了。

抢票的关键有两个,首先是你得知道什么时候有票,然后再是以最快的速度提交订单抢票。恰好12306网站提供了足够的方式让我们得到这些想要的。查询余票的信息只需要提交一个请求,填写出发地目的地等信息,然后可以从返回的页面中解析出所有的列车信息,包括座位类型余票数等等。查询动作可以重复执行,直到发现有满足需求的车票为止。然后提交一个订票的表单,车票就到手了,世界还是美好的!

了解了抢票的原理,我们再来讨论如何防止抢票。其实根源就在于它是基于http协议的,前端的代码和提交的数据都可以轻易的被截获、分析,从而制作出伪造的请求。在http这个框架下面,不管铁道部的专家如何修改页面,修改判断是否为真是请求的条件(比如http头部的字段),对伪造都难以造成困扰,只不过是一时有效。

如果把订票做成一个专用客户端软件,通过客户端来查询订票,数据在客户端内封装加密后传送给服务器。这时候代码是隐藏的,看不见除非你反汇编,数据内容也不能够抓取,抓取的都是秘文,没什么用。要想伪造数据提交订单,难度相当大,门槛就大大提高了,抢票的问题会比现在好很多。

随便说说,天朝的XX部做一个网站尚且耗资数亿,要是开发一个客户端岂不是要数十亿,如此劳民伤财的事或许不做更好。

你抢或者不抢,票就在那里,不会变多也不会变少,只有铁路变宽了,车次多了,票自然不必抢。我们这些搞技术的也可以轻松回家,不必如此劳心费力。

12306怎样才能防止抢票?相关推荐

  1. 2021最新 python爬取12306列车信息自动抢票并自动识别验证码(三)购票篇

    项目前言 tiebanggg又来更新了,项目--[12306-tiebanggg-master]注:本项目仅供学习研究,如若侵犯到贵公司权益请联系我第一时间进行删除:切忌用于一切非法途径,否则后果自行 ...

  2. 2021最新python爬取12306列车信息自动抢票并自动识别验证码

    项目描述 项目前言 tiebanggg又来更新了,项目--[12306-tiebanggg-master]注:本项目仅供学习研究,如若侵犯到贵公司权益请联系我第一时间进行删除:切忌用于一切非法途径,否 ...

  3. python爬取12306列车信息自动抢票并自动识别验证码(一)列车数据获取篇

    项目前言 自学python差不多有一年半载了,这两天利用在甲方公司搬砖空闲之余写了个小项目--[12306-tiebanggg-master].注:本项目仅供学习研究,如若侵犯到贵公司权益请联系我第一 ...

  4. python爬取12306列车信息自动抢票并自动识别验证码(二)selenium登录验证篇

    项目前言 自学python差不多有一年半载了,这两天利用在甲方公司搬砖空闲之余写了个小项目--[12306-tiebanggg-master]注:本项目仅供学习研究,如若侵犯到贵公司权益请联系我第一时 ...

  5. 教你如何秒杀12306,JAVA程序抢票成功 分享 附截图

    最新版本12306抢票代码请到http://www.zuidaima.com下载:2014新12306抢票源码 GOHOME最新版出世了!!!支持多人订票及指定车次等功能!!!更方便! JAVA程序G ...

  6. 加速包可能没用!12306屏蔽多个抢票软件

    最近,买回家的春运火车票正火热的进行中,有些人已经买到票了则如释重负,而更多的人仍在苦苦的抢票,相信各位最近都会受到好友发来的"我正在购买加速软件,助我抢到回家的票"类似的链接消息 ...

  7. 使用Python和Splinter实现12306火车票查询与抢票

    有一段时间没有使用Python了,前几天经朋友提起一篇关于用Python实现抢火车票的文章,百度了实现抢火车票的技术细节,网上却有不少资料,也不是新鲜的东西.在了解了一些技术手段,阅读了一些大神的博文 ...

  8. python+selenium实现12306自动登录刷票抢票(自己做黄牛?!)

    上一篇写了12306的自动登录破解验证图https://blog.csdn.net/weixin_38283159/article/details/86498159 这篇算是它的后续部分加上了简单的刷 ...

  9. 用Python自动识别验证码(完整教程,陆续更新12306验证码识别,抢票)

    1.古诗文网验证码识别 2.fateadm_api.py(识别需要的配置,建议放在同一文件夹下) 调用api接口 全部源代码和相关配置,已古诗文网验证码识别为例,进行学习,代码中有相关说明,每一步都有 ...

  10. 【数据结构与算法】7.位图算法、12306抢票算法

    前言 本文收录于专辑:http://dwz.win/HjK,点击解锁更多数据结构与算法的知识. 你好,我是彤哥,一个每天爬二十六层楼还不忘读源码的硬核男人. 相信大家都有过抢票.刷票的经验,每年年底, ...

最新文章

  1. linux启动nifi指令,Nifi 组件脚本开发 - ExecuteScript 使用指南 (二)
  2. .NET 中依赖注入组件 Autofac 的性能漫聊
  3. 1、HTTP--Web's foundation
  4. Java、R、JS 最常用,架构师薪资最高!起底中国开发者现状
  5. mysql和hdfs性能对比,Hadoop vs Spark性能对比 -数据库-火龙果软件工程
  6. 【转】opencv 配置
  7. python中数据处理的格式,json.csv txt excel
  8. 专访黑石集团CEO苏世民:“我们能见他人所不能见”/巴伦独家
  9. linux超级终端root权限,linux超级终端命令
  10. 一博商业进销存管理系统 v2008 怎么用
  11. 百度语音识别开放平台SDK使用方法
  12. ARB_precision_hint_fastest,ARB_precision_hint_nicest 的意义,作用
  13. 企服网:语音线路市面上有哪些?
  14. yocs_velocity_smoother速度平滑配置与使用
  15. xxxxxxxxxxxxxx
  16. 完美实现PC端软件控制手机(无需安装任何APK)(一)
  17. 今天又get到一个小技能,collect_set函数
  18. java电子邮件收发系统,基于Java_Mail的电子邮件收发系统毕业设计
  19. 统计英文字数c语言,用C语言作纯英文字数统计
  20. VST3主机开发(二)——插件调用

热门文章

  1. linux计划任务5个*分表代表什么,Linux定时任务Crontab命令
  2. 暗月渗透实战靶场-项目七(上)
  3. html5分镜头脚本范例,分镜头脚本范本
  4. 计算机网络中协议分层的目的是什么意思,网络协议分层的作用是什么
  5. 数组:求绝对值最小的数
  6. 职场新人注意事项:抖包袱可以,抖机灵不要
  7. 怎么删除win10 C盘Hiberfil.sys文件,Hiberfil.sys文件删了有没有事?
  8. 2353410-03-2,TCO-PEG8-acid末端羧酸(CO2H)可在活化剂(例如EDC或HATU)存在下与伯胺基反应以形成稳定键
  9. Pandas里面的加权平均,我猜你不会用!
  10. 对大脑有益的16种食物_对大脑有益的六类食物