如果网络爬虫访问某个网站太频繁,很可能被目标网站封锁,虽然网站封锁有很多种,需要不同的应对方案,但是,最常用的缓解封锁的方案是换IP,关于其他封锁应对方案大家可以跟帖讨论。 换IP也有两个方案:
本文讲解方案2,由于各个proxy服务的api各不相同,每接入一种proxy服务,都要修改网络爬虫软件,本文只讲解接入芝麻http的方法,如果您需要接入其他proxy服务,需要与集搜客技术支持联系。 1. 获得提取IP的网址 在芝麻http网站上,顶部菜单有“获取API”,进入到获取API页面,假定购买了按次提取的服务,如下图进行设置,以获得提取IP的网址。 注意提取数量:选择1个,因为爬虫每次只用一个。其他选择看上图,通过这个API接口,会返回提取到的IP和端口号,集搜客网络爬虫需要解析这个返回结果,只支持JSON格式的返回结果,所以,要像上图那样设置。 点击“生成API链接”,就能得到一个网址,这个网址是要配置到集搜客网络爬虫中的,爬虫会每隔一定时间通过这个网址提取一个新IP地址。 2. 实验提取IP 点击“生成API链接”后,能看到这个页面内容 点击复制链接,可以把这个网址拷贝下来,到网络爬虫软件那里用上这个网址做proxy配置(下面的章节讲解)。 点击“打开链接”,我们查看一下API返回的结果,如下图: 也可能没有expire_time,如下图,那么在下面就不要填写“有效期字段名” 3. 配置爬虫软件 经过上面的步骤,获得了4项内容,需要配置到爬虫软件中:
如上图,选择DS打数机菜单 高级->设置代理,可以看到配置proxy服务器的窗口,点击添加按钮,输入上述4项内容。 点击“取IP”按钮,弹出窗口中如果看到返回的json格式的结果中含有ip地址和端口号等,表示已经能正确提取IP了。 4. 启用提取IP 缺省是不启用的,而且也可以随时关闭,毕竟每次提取IP是需要花钱的。启用的方法如下图,勾选“在用”,就能把这条proxy服务器设置使用起来。在同一台计算机上,只能启用一个,否则就冲突了。 如果启用了,就可以在集搜客浏览器上测试一下效果。在集搜客浏览器上访问百度,并且搜索IP地址,看看百度显示的IP地址是什么,如下图: 上图能看出来,得到的地址显然不是自己所在地的地址,看来配置的生效了。 5. 诊断 如果IP提取成功,就会在集搜客浏览器中进行配置,这个配置是全局的,所有DS打数机窗口和浏览器窗口都会使用这个IP,这个配置可以在浏览器中通过输入网址about:config看到,如下图 输入搜索条件:proxy,看到ftp, http, socks, ssl等都使用了提取到的IP和端口号。 如果能看到这些设置,依然不能访问互联网,比如,连百度都访问不了,那么你所在的网络可能禁止了proxy通信协议。那么只有采用本文开头说的方案1了。 |