Archive for the ‘ 未分类 ’ Category

和12580长得很像的12306,你懂的

取了一个这么肯跌的标题。

首先这篇文章的最佳读者是前端,当然你经常使用firebug也是可以试试。

可以买票前三天开始准备!,必须熟悉购票的完整流程。

第一章:怎样登陆12306

1、下载根证书、注册好账户,死活登陆不进去吧!这个我没有什么好办法,自己写一段简单的脚本自动重试,这个不是最好的办法。
建议提前一个小时就开始尝试登陆系统,成功了就可以按照下面的步骤了。

2、进入查询界面

image

打开firebug,网络

image

就像这样子

点击查询后就会有这样的一个请求:

image

https://dynamic.12306.cn/otsweb/order/querySingleAction.do?method=queryLeftTicket&orderRequest.train_date=2012-01-11&orderRequest.from_station_telecode=HZH&orderRequest.to_station_telecode=VAP&orderRequest.train_no=&trainPassType=QB&trainClass=QB%23D%23Z%23T%23K%23QT%23&includeStudent=00&seatTypeAndNum=&orderRequest.start_time_str=00%3A00–24%3A00

把这个请求地址记录下来!!

在新标签页中打开,可以看到这样的数据

image

为什么要把这个地址单独提取出来?是为了能够直接查询数据,而不用在页面上加载一些我们不需要的数据(为tdb减压啊!),更重要的是在这里!

查看这个的代码,在你想要的车次上的按钮上右键

image

image

复制这段代码,

image

<input type=”button” value=”预订” onclick=”javascript:getSelected(‘G32#06:24#07:17#5600000G3210#HZH#VNP#13:41#杭州#北京南#9198300026M105800125O063100364′)” onmouseout=”this.className=’yuding_u’” onmousedown=”this.className=’yuding_u_down’” onmousemove=”this.className=’yuding_u_over’” class=”yuding_u”>

这段代码就是关键,至于里面的参数除了最后一个9198300026M105800125O063100364′不容易明白其余的都很容易

 

———————————————————————–

最新研究发现可以这样做:

构造请求,直接跳过中间步骤!

需要构造的url是这样的,请对照上面的’G32#06:24#07:17#5600000G3210#HZH#VNP#13:41#杭州#北京南#9198300026M105800125O063100364′ 替换掉url的参数:

 

https://dynamic.12306.cn/otsweb/order/querySingleAction.do?method=submutOrderRequest&arrive_time=23%3A14&from_station_name=%E6%9D%AD%E5%B7%9E&from_station_telecode=HZH&from_station_telecode_name=%E6%88%90%E9%83%BD&include_student=00&lishi=06%3A38&round_start_time_str=00%3A00–24%3A00&round_train_date=2012-01-07&seattype_num=&single_round_type=1&start_time_str=00%3A00–24%3A00&station_train_code=G44&to_station_name=%E5%8C%97%E4%BA%AC%E5%8D%97&to_station_telecode=VNP&to_station_telecode_name=%E6%9D%AD%E5%B7%9E&train_class_arr=QB%23D%23Z%23T%23K%23QT%23&train_date=2012-01-07&train_pass_type=QB&train_start_time=16%3A36&trainno=5600000G4420&ypInfoDetail=9198300025M105800127O063100438

 

服务器检查referer了,所以够着好这个链接url需要找一个12306网页上的a链接,把href替换成这个链接

比如车票预定这里:

image

image

image

然后点击车票预定就可以到确认订单页面了

———————————————————————–

image

 

如果你的车次已经不能预订了,那就换一天的,换以前的,直到找到为止

 

接下来你要做的事事演练,找一个月黑的时候,在放票前,很不幸你的票已经售完了吧,就像这样:

image

很伤心~我们的那段代码派上用场了:

找到你要得那趟车,比如这个:

image

image

点击这个编辑:

image

用刚才的那段准备好的代码替换这个

image

看你的按钮亮了吧!

image

不过点击这个按钮是预定的北京的火车。

然后顺利进入购票页面,接着开始按照网上的另一篇教程修改乘车时间以及坐席类别

不要忙着提交,现在提交系统肯定会拒绝你购买的,票真的没有,就算你改了时间也是没有的。

你需要等着,等到放票时间开始后订票。

这期间你还要注意不要session过期(新开一个标签页面打开https://dynamic.12306.cn/otsweb/sysuser/user_info.jsp)几分钟刷新一次!(如果变成登陆界面千万不要去登陆,这个时候你应该还没掉线的,换个链接点击一下就可以了)

 

附上后续步骤的链接http://qing.weibo.com/2300267615/891b4c5f33000bub.html

 

大家会很奇怪为什么要让我保存input的那堆数据吧?

如果按照网络上的那篇文章前提是你必须要找到一个和你一样的车次,而且要可以预定!那样的基本上是很困难的事情,我们把这段代码保存下来之后就不用担心这个问题了!

 

这里有那么点小东西,先不说了,大家试试吧,成功了就分享一下。在实施这个方法之前请一定找个朋友在另一台电脑上正常为你购票。不保证系统会不会变更了。

另外请再找一个朋友帮你不停地打95105105,,多种方法一起才是王道。

 

祝愿大家都能买到票。祝愿12306不要502!

密码保护:正在听第四首歌

这是一篇受密码保护的文章。您需要提供访问密码:


kissy-anim-动画后form表单数据丢失

详细的走完了一次动画主流程,学习到了不少知识。分享一个遇到的问题。

问题出在对form表单里面的DOM节点动画。

为了获取DOM在动画后的真实样式,KISSY采用的方式是复制DOM节点来达到相应的目的。

但是复制后会发生一个问题,form中的元素,特别是radio,如果有相同的name丢回丢失选中的值。

demo是这样的,当我们随便选中一个radio,点击测试,就会发现radio的位置变化了。

阅读全文

kissy-anim-动画的实现方式-2

上一篇的准备工作都已经就绪,还没看见我们的动画动起来啊!

现在就要开始动了。

阅读全文

KISSY Anim 动画的实现方式-1

KISSY的动画是通过Anim类的方式实现的。一般我们使用动画类都是这样:

Node.one(‘#test2′).animate(‘left: 500px’, 3, Easing.backOut);

在这个时候发生了那些事情呢,一步步跟踪看看:

阅读全文