不正经开场白在学习爬虫时,遇到了一个有意思的网站,这个网站设置了几个关卡,需要经过爬虫进行闯关,随着关卡的往后,难度不断增加,在闯关的过程中需要学习不同的知识,你的爬虫水平也自然随之提高,来跟我一起闯关吧!
今天我们先来第一关,访问闯关地址,我们可以得到如下页面:
是不是看着有点懵逼了,那就按照提示,我们把数字放到地址栏的后面,再次进行访问:
经过多次手动填数字后,我们得到了这个页面:
有一 dabo 数字,显然手动在这输是不太靠谱了。
不过,我们可以大致总结出本关的规律:第一关是将页面出现的数字填写到当前 URL的尾部进行访问,然后会得到一个新的数字,再用它替换 URL中的尾部数字,这样不断循环往复,直到页面出现成功标识。
那么思路也有了:
解析页面中的数字;
将数字拼接成新的 URL;
访问新的 URL,重复第 1 步;
直至页面没有数字可以解析到!
逻辑比较简单,这里我们直接上代码了。这里提供了两种实现方式:BeautifulSoup 方式和 selenium 方式,两种都可以。
BeautifulSoup 实现
运行:
selenium 实现
到这里我们终于解开了第一关的「真面目」:
最终页面
好了,第一关相对来说比较容易,下次我们来搞一下第二关,有兴趣的同学可以自己先上手攻取下~
关于赠书
上次我说几个中奖的同学没有联系我,无知的我今天发现「抽奖助手」那里他们已经留了寄送地址......
不过经排查,其中一个不是关注我们公众号的小伙伴,所以就剩下了一本《Python3 网络爬虫开发实战》,那就送给公众号文章最近留言的第一名吧,这名读者的昵称是「素还真」:
希望这位 素还真 同学看到这里后,一定要及时联系我,加我微信,告诉我你的邮寄地址和联系方式。我会直接把书寄给你哦。以后的赠书或者其它福利活动,我们还是会继续以公众号数据为参考,为支持本公众号的朋友直接发放福利。所以,也请大家积极分享、积极点赞、留言,下次可能会给分享第一名哦~