文档章节

第5个HttpClient 例子,使用代理IP

诺岚
 诺岚
发布于 2017/08/29 11:57
字数 177
阅读 48
收藏 0

代码:

import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.InputStream;


public class Demo02 {
    public static void main(String[] args) throws Exception {
        //创建HttpClient实例
        CloseableHttpClient client = HttpClients.createDefault();
        //创建httpget实例
        HttpGet get = new HttpGet("https://www.oracle.com/us/assets/hp10p2-oracle-code-sprite-3861772.jpg");
    //设置代理IP
        HttpHost proxy=new HttpHost("183.232.65.203", 3128);
        RequestConfig config=RequestConfig.custom().setProxy(proxy).build();
        get.setConfig(config);
        //设置请求头信息
        get.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0");
        //执行http get 请求
        CloseableHttpResponse execute = client.execute(get);
        //获取返回的实体
        HttpEntity entity = execute.getEntity();
        if (entity!=null){
            //输入返回的内容
            System.out.println("Content-Type:"+entity.getContentType().getValue());
            InputStream inputStream=entity.getContent();
            FileUtils.copyToFile(inputStream, new File("C://dljd5.jpg"));
        }

        //response 关闭
        execute.close();
        //httpclient 关闭
        client.close();
    }
}

运行结果:

 Demo02
Content-Type:image/jpeg; charset=

Process finished with exit code 0

© 著作权归作者所有

共有 人打赏支持
诺岚
粉丝 0
博文 106
码字总数 185320
作品 0
广州
程序员
私信 提问
DungProxy 0.0.6 发布,代理 IP 池

dungproxy是一个代理IP池,通过一种顺序惩罚算法实现灵敏的IP切换和IP评分。适用于模拟登录,爬虫,抓取等业务。同时dungproxy提供一个免费的代理IP源,dungproxy-client默认情况下会自动接入...

virjar
2017/05/20
802
5
HttpClient及有关jar包详解

1.HttpClient简介 HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。本...

长平狐
2012/11/12
12.3K
2
HTTP协议和HttpClient的入门

HTTP协议的发展史没有了解,是给予请求与响应模式的、无连接、无状态的应用层的协议。 HTTP协议 HTTP协议的URL HTTP URL(URL是一种特殊类型的URI,包含了勇于查找某个资源的足够的信息)的格式...

凹凸口天
2013/07/15
0
0
Android下的网络编程 & 代理的使用

1. 使用 标准Java接口: 设计的类: java.net.* 基本步骤: 1) 创建 URL 以及 URLConnection / HttpURLConnection 对象 2) 设置连接参数 3) 连接到服务器 4) 向服务器写数据 5)从服务器读取数据...

小编辑
2010/08/12
5.5K
2
.NET HttpClient,存在缺陷让开发人员沮丧

设计错误、缺陷及文档错误等导致正确使用.NET HttpClient变得出奇地困难。所以,即使是生产环境中看似运行正常的应用程序,在负荷不满的情况下,也遭受着性能问题和运行时故障。 来自ASP.NET...

达尔文
2016/09/12
8.5K
21

没有更多内容

加载失败,请刷新页面

加载更多

Ubuntu16.04下安装docker

[TOC] 本文开发环境为Ubuntu 16.04 LTS 64位系统,通过apt的docker官方源安装最新的Docker CE(Community Edition),即Docker社区版,是开发人员和小型团队的理想选择。 1. 开始安装 1.1 由于...

豫华商
52分钟前
6
0
使用XShell工具密钥认证登录Linux系统

如果你是一名Linux运维,那么Linux服务器的系统安全问题,可能是你要考虑的,而系统登录方式有两种,密码和密钥。哪一种更加安全呢? 无疑是后者! 这里我为大家分享用Xshell利器使用密钥的方...

dragon_tech
今天
4
0
day178-2018-12-15-英语流利阅读-待学习

“真蛛奶茶”了解一下?蜘蛛也会产奶了 Lala 2018-12-15 1.今日导读 “蛋白质含量是牛奶的 4 倍,并有着更低的脂肪和含糖量”,听起来诱人又美味的并不是羊奶或豆奶,而是你可能打死都想不到...

飞鱼说编程
今天
11
0
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents

场景重现 npm install --verbose 安装依赖的时,出现如下警告 强迫症患者表示不能接受 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\fsevents):npm WARN......

taadis
今天
2
0
OSChina 周六乱弹 —— 你一口我一口多咬一口是小狗

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @达尔文 :分享Roy Orbison的单曲《She's a Mystery to Me》 《She's a Mystery to Me》- Roy Orbison 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
422
6

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部