在浏览一些网站的时候由于各种原因,无法进行访问。

频繁访问也可能导致ip被封锁而导致无法访问网站,这在我们爬取数据过程中经常遇到。

这时我们需要通过IE,FireFox进行Http的代理设置, 
当然httpClient也为我们提供这样的设置 。

代理ip用很多种形式,可以找到一个可用Ip或者使用goagent,或者购买代理ip池。

那在httpclicent中要怎么样运用呢。我们以goagent为例。

goagent打开后,只要通过127.0.0.1 端口8087来访问 就可以了

httpclient的具体用法有两种  post和get,具体使用方法可参考:

HTTPClient模块的HttpGet和HttpPost

要调用代理,只需要增加以下代码:

HttpHost proxy = new HttpHost("127.0.0.1",8087, null);
httpclient.getParams().setParameter(ConnRouteParams.DEFAULT_PROXY, proxy);

如果代理需要用户,密码进行验证

httpClient.getCredentialsProvider().setCredentials(new AuthScope(proxyHost, proxyPort),new UsernamePasswordCredentials(userName, password));

完整例子:

public static void main(String args[])
{StringBuffer sb = new StringBuffer();//创建HttpClient实例HttpClient client = getHttpClient();//创建httpGetHttpGet httpGet = new HttpGet("http://www.csdn.net");//执行try {HttpResponse response = client.execute(httpGet);HttpEntity entry = response.getEntity();if(entry != null){InputStreamReader is = new InputStreamReader(entry.getContent());BufferedReader br = new BufferedReader(is);String str = null;while((str = br.readLine()) != null){sb.append(str.trim());}br.close();}} catch (ClientProtocolException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println(sb.toString());
}//设置代理public static HttpClient getHttpClient() {DefaultHttpClient httpClient = new DefaultHttpClient();String proxyHost = "proxycn2.huawei.com";int proxyPort = 8080;String userName = "china\\******";String password = "*******“httpClient.getCredentialsProvider().setCredentials(new AuthScope(proxyHost, proxyPort),new UsernamePasswordCredentials(userName, password));HttpHost proxy = new HttpHost(proxyHost,proxyPort);httpClient.getParams().setParameter(ConnRouteParams.DEFAULT_PROXY, proxy);return httpClient;
}导入:commons-logging-1.1.jar,httpclient-4.0-beta2.jar ,httpcore-4.1-alpha1.jar 和 commons-codec-1.4.jar架包

httpclient使用代理ip相关推荐

  1. httpclient动态代理ip

    在爬取网页的时候,有的目标站点有反爬虫机制,对于频繁访问站点以及规则性访问站点的行为,会采集屏蔽IP措施. 这时候,代理IP就派上用场了. 关于代理IP的话 也分几种 透明代理.匿名代理.混淆代理.高 ...

  2. HttpURLConnection和httpclient添加代理IP和端口

    /*代理设置*/ HttpClient httpclient = new DefaultHttpClient(); HttpHost proxy = new HttpHost(System.getPr ...

  3. JAVA之HttpClient+Jsoup实现代理IP爬虫

    文章目录: HttpClient(请求数据): Jsoup解析筛选数据: 通过httpclient+jsoup爬取代理ip网址上面的ip和端口,并存入数据库: 筛选数据库中的有效代理IP,并实现代理I ...

  4. Java HttpClient 如何使用代理IP请求接口

    实际场景中,可能会遇到需要使用代理IP请求接口的需求,所以这里给大家分享一下如何通过代理IP请求接口. proxyServer 代理IP proxyPort 代理端口 HttpClient httpC ...

  5. 网络爬虫生成代理ip

    代理 写网络爬虫时,经常会遇到ip频繁访问被封的问题,经常使用的解决办法就是代理ip.为此,我写了一个随机生成一个可用代理ip的样例程序. 程序 package proxy;import java.i ...

  6. 太阳动态ip代理为您详解使用代理ip常见的几个关键点及其解决方案

    一个ip支撑不了整个爬虫项目的运营,因此程序员常需要建立代理ip池或者与第三方代理ip软件打交道.作为优质的代理ip服务商,太阳动态ip代理为您详解使用代理ip常见的几个关键点及其解决方案. IP检验 ...

  7. HttpClient使用代理

    1.为什么使用代理 当爬取网页的时候,有的目标站点有反爬虫机制,对于频繁访问站点以及规则性访问站点的行为,会采用屏蔽IP的措施,这时候代理IP就派上用场了. 2.代理的分类 (一)透明代理(Trans ...

  8. python爬虫ip代理没有作用_可能是一份没什么用的爬虫代理IP指南

    写在前面 做爬虫的小伙伴一般都绕不过代理IP这个问题. PS:如果还没遇到被封IP的场景,要不你量太小人家懒得理你,要不就是人家压根不在乎... 爬虫用户自己是没有能力维护一系列的代理服务器和代理IP ...

  9. android HttpClient 设置代理

    HttpClient client = new HttpClient();//设置代理.转发到 哪个 ip 和 port , 192.168.3.196 是我本机的charles 地址和端口clien ...

  10. 使用代理ip常见的几个关键点及其解决方案

    一个ip支撑不了整个爬虫项目的运营,因此程序员常需要建立代理ip池或者与第三方代理ip软件打交道.作为优质的代理ip服务商,太阳动态ip代理为您详解使用代理ip常见的几个关键点及其解决方案. IP检验 ...

最新文章

  1. 卷积神经网络(CNN)张量(图像)的尺寸和参数计算(深度学习)
  2. 基于单片机的调光控制器设计
  3. mysql系列问答题_(2)MySQL运维基础知识面试问答题
  4. Spring MVC 中 HandlerInterceptorAdapter的使用(拦截器)
  5. bind() c语言,c/c++ 标准库 bind 函数详解
  6. 【今日CV 视觉论文速览】14 Nov 2018
  7. 那些让程序员提升30-80%的快捷键大全整理
  8. matlab转python很难吗_MATLAB在逐渐被Python淘汰吗?
  9. cl.g4r.win index.php,win7 wamp环境配置Oracle数据库连接
  10. 【Docker】 for Mac 配置镜像加速器,加快镜像下载速度
  11. 研究生学习生活日记——第五次组会
  12. 如何把qsv视频格式转换成mp4视频格式
  13. 【下载】DE2、DE2-70、DE1光盘资料
  14. random和stochastic的区别
  15. ARM架构SMMU驱动详解
  16. 新概念英语(第四册,旧版)复习(原文及全文翻译)——Lesson 1 - Finding Fossil Man(寻找化石人)
  17. ADSL初始地址及用户名密码大全(转)
  18. 未来5年,6大风口行业
  19. python 打开文件夹所有文件_python遍历文件夹下所有文件
  20. 复现Detectron2-blendmask之冰墩墩雪容融自定义数据集语义分割

热门文章

  1. VS2013附加包含目录,添加相对路径
  2. 《大型分布式网站架构设计与实践》
  3. 在Linux下玩QQ游戏
  4. 算法和数据结构(b站尚硅谷韩老师教程学习笔记)
  5. java项目有个x_GitHub - somnl/X-SpringBoot: X-SpringBoot是一个轻量级的Java快速开发平台,能快速开发项目并交付【接私活利器】...
  6. 计算机msvcp100.dll,msvcp100.dll丢失的解决方法
  7. python迷宫万花筒代码_Python实现PS滤镜的万花筒效果示例,python万花筒
  8. java移位运算符(一个大于号,两个大于号,三个大于号)
  9. android源码编译烧鸡,板栗烧鸡的做法图文
  10. fiddler电脑抓包和HttpCanary(小黄鸟)手机抓包教程