最近在学习python爬虫,正好同事做蜜罐需要65535个端口信息,所以顺便把端口信息爬下来了。
然而有个站点提供了这些信息:https://www.speedguide.net/port.php?port=21,链接比较固定,参数port即是端口号,所以只要遍历0-65535就可以获取0-65535的端口信息了。
我们只需要如上图所示表格中的内容,我只要把这些提取出来就行了。但是解析网页实在是有点头疼,一开始用了xpath,但是表格里面又带有html标签,网上查了一堆方法也没解决,只好继续用beautifulsoup了。然而在解析的时候每个端口的协议数量完全不同,所以还需要判断。而且这个网站不太稳定,还有反爬虫机制。不过绕过反爬还是比较好做的,加个时间延迟就OK了,反正放服务器里面慢慢跑,也可以加代理池。解析网页的方法比较奇葩,应该有其他更好的方法,只是个人思路。欢迎大家指正。
源码截图如下,代码量不多,其实还可以优化。喜欢爬虫和黑客的网友,欢迎关注。
请允许我附一张美图吸引浏览量[哭笑]
领取专属 10元无门槛券
私享最新 技术干货