当前位置: java基础教程 > 26-java爬虫 > 阅读正文

httpclient客户端http下载类

2021.5.4.   444 次   957字

这个类, 来自于 org.apache , 需要先下载jar包

导入jar包

对于 maven 工程, 导入如下坐标

<!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient -->
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.2</version>
</dependency>

你也可以从上面下载jar包, 这里提供一个备份下载

此外, apidoc可参考httpclient-apidoc, 或在maven仓库中view all下载文档

测试获取网页

new 一个 test 类, 写一个 test 方法, 并拷贝如下代码

    @Test
    public void test01(){
        //1.创建httpClient对象
        CloseableHttpClient httpClient = HttpClients.createDefault();
        //2.创建httpGet对象
        HttpGet httpGet = new HttpGet("https://www.52dixiaowo.com");
        try {
            //3.使用httpClient发起get请求, 并获得响应对象
            CloseableHttpResponse response = httpClient.execute(httpGet);
            //4.判断响应对象是否为200
            if(response.getStatusLine().getStatusCode()==200){
                //5.取出响应体, 并打印
                HttpEntity entity = response.getEntity();
                String content = EntityUtils.toString(entity,"utf-8");
                System.out.println(content);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

执行此 test01 方法, 打印的数据跟浏览器访问时返回的响应体是一致的

可在httpGet对象设置请求头,entity.getContent()会返回一个响应输入流

下载此demo代码

本篇完,还有疑问?

加入QQ交流群:11500065636 IT 技术交流群