程序员的我是如何抢票的(Python)
马上就要回家过年了,你的票买好了吗。 虽然我不用抢票,但是还是研究了一下怎么抢票。 程序员嘛,就是要对一切问题进行解构,探索原理本质,寻找规律,将其自动化。。。 好了,言归正传,开始。 1.首先,打开12306网。选个自己要买的路段,我这里是随便选的。 然后点击查询。 2.按下F12,设置如红色框。然后重新点击查询,看看浏览器都发送了什么给服务器。 从下图看,是发送了两条。 3.分别点击发送的两条,查看返回结果。可以看到第二条里面有当前网页车票相关的信息。比如“有”就是显示在网页上面的车票后面的有字,“大连”就是出发站信息。于是,我们知道车票信息是在这里面。实际这是个json格式的数据。 4.继续查看这条请求访问的链接。如下。 于是,我们可以用requests库来模拟浏览器访问。很简单,具体写作如下: 5.那么,如下图车票的有无信息是如何提取出来呢? 仔细观察发现,“有”“无”“-”信息是用“|”线来分割的。而且为了防止爬取,顺序是和网页显示不一样的。探究规律如下: 数字意思:软卧 23 意思是第23个字符内容对应的是软卧的有无票状态。 '''无座 26软卧 23硬座 29硬卧 28特...