12306登录页面html(12306登陆实现)(1)

上篇文章本来只是介绍下抓包软件,只是顺带提了下12306,没想到大家都很关心12306的问题,这篇就主要写下通过抓包实现12306登陆。15年低的时候抓包研究过12306从登陆到下订单整个过程,主要是验证码这块,最开始做的时候也纠结了几天,后来发现,验证码是点击图片是记录下点击的位置坐标,将位置坐标组合起来就是验证码。下图是做的一个网页登陆界面,界面比较粗糙:

12306登录页面html(12306登陆实现)(2)

12306登录页面html(12306登陆实现)(3)

提交的参数是用户名,密码,验证码。验证码格式为:x1,y1,x2,y2.....,校验验证码返回JSON中LoginCheck=Y表示验证码正确。下面是JS中的一段获取验证码点击位置坐标的代码:

12306登录页面html(12306登陆实现)(4)

下面是后台校验验证码的代码截图:

12306登录页面html(12306登陆实现)(5)

下面是后台登陆的代码截图:

12306登录页面html(12306登陆实现)(6)

这里只是做手动识别验证码,最主要也就是校验验证码这块,其它的都是常规的HTTP请求。如果想做自动识别验证码,可以接入一些打码平台或者用百度识图的API去识别图片,最终验证码还是转成x1,y1,x2,y2....格式的字符串。之前也做过安卓的,这里就不贴安卓的代码了,原理都类似。

,