简单使用requests库爬取Ip代理

简单使用requests库爬取Ip代理

想必喜欢爬虫的小伙伴都知道,当你刚入门爬虫的时候通过一些基本的方法来访问网站,往往“爬得一时爽”,然而没过多久,IDE便会返回各种各样的错误信息,告诉你,爬虫失败啦,被拦截啦之类的

那么其实呢我们有比较简单的方法来使得你的爬虫稍稍耐久一些,比如多个Ip代理,我们去 好站长 上就能找到啦,但是这么多,你要复制下来弄成一个List,你还要手动打引号和逗号,是不是很繁琐呢?那么我们就用爬虫把它爬下来吧!

首先一贯作案手法,选择一个Ip,然后右键审查元素,可以看到

简单使用requests库爬取Ip代理

其中很显然的所有的Ip地址都在<div class="row">下的<div class="col-xs-12">里面嘛,(图片看不清的同学可以点击图片放大看)那么我们接下来就用xpath语法来获取这些Ip地址,如果不太熟悉的同学可以去百度一下教程,还是很多的,而且xpath也非常好用

简单使用requests库爬取Ip代理

那么我们就输出一波看看是不是有正确爬取到了

简单使用requests库爬取Ip代理

然后呢我们发现list里面的元素前面有多余的换行符和空格,那么我们就用re模块给处理掉

简单使用requests库爬取Ip代理这样代码就写好了

我们再打印一波看看

简单使用requests库爬取Ip代理 这样就大功告成了~

另外有一个神奇的bug,我用xpath处理之后转成str之后用replace()函数是没有办法把\n去掉的,用re模块里面的sub()方法就可以了….尴尬