浏览 299 次
锁定老帖子 主题:企业选择爬虫代理的重要因素
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2021-10-27
应对这种爬虫阻碍最简单的方式就是使用代理IP,常用的方法就是用亿牛云爬虫代理IP来更换,但是代理IP也有很多种类型,不同类型的代理IP适合不同的场景,而最适合爬虫的专门提供的爬虫代理。 一些选择代理的重要因素分享给大家: 1、IP池大的代理商,需要的数据越多,ip池越大越好。 2、覆盖地区广的代理IP,爬虫代理IP池地区覆盖越广,长期更加稳定 3、选择稳定性高的爬虫代理IP,最好是测试对比稳定性 4、支持大量并发的爬虫代理,比如爬虫加强版 5、一定要选择家庭私密真实IP,延迟会更低,速度更快。 简单的爬虫程序里面代理的使用方式,这里以动态转发为例: import org.apache.commons.httpclient.Credentials; import org.apache.commons.httpclient.HostConfiguration; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpMethod; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.UsernamePasswordCredentials; import org.apache.commons.httpclient.auth.AuthScope; import org.apache.commons.httpclient.methods.GetMethod; import java.io.IOException; public class Main { # 代理服务器(产品官网 www.16yun.cn) private static final String PROXY_HOST = "t.16yun.cn"; private static final int PROXY_PORT = 31111; public static void main(String[] args) { HttpClient client = new HttpClient(); HttpMethod method = new GetMethod("https://httpbin.org/ip"); HostConfiguration config = client.getHostConfiguration(); config.setProxy(PROXY_HOST, PROXY_PORT); client.getParams().setAuthenticationPreemptive(true); String username = "16ABCCKJ"; String password = "712323"; Credentials credentials = new UsernamePasswordCredentials(username, password); AuthScope authScope = new AuthScope(PROXY_HOST, PROXY_PORT); client.getState().setProxyCredentials(authScope, credentials); try { client.executeMethod(method); if (method.getStatusCode() == HttpStatus.SC_OK) { String response = method.getResponseBodyAsString(); System.out.println("Response = " + response); } } catch (IOException e) { e.printStackTrace(); } finally { method.releaseConnection(); } } } 示例是实际测试可以用的,有需要的可以实践学习学习。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |