IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> Java_网络爬虫_HttpClient_Get请求 -> 正文阅读

[网络协议]Java_网络爬虫_HttpClient_Get请求

上网时是使用Http协议访问网页的,在编写爬虫程序时,使用 Java 的 HTTP 协议客户端HttpClient技术实现网页数据的抓取。

1. Get 请求

运行环境:已经配置好pom.xml 、log4j.properties

测试代码

测试结果:

(1)没有日志文件的测试结果?

(2)有日志文件的测试结果

把pom.xml的 slf4j 的test注释掉

可复制代码:?

package cn.itcast.crawler.test;

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.http.util.EntityUtils;

import java.io.IOException;

/**
 * HttpClient 中 Get 请求测试步骤
 * 
 *  1. 创建HttpClient对象
 *  2. 创建HttpGet对象,设置url访问地址
 *  3. 使用httpClient对象发起请求,获取response
 *  4. 解析响应
 *  5. 关闭response资源
 *  6. 关闭浏览器HttpClient资源
 */

public class HttpGetTest {
    public static void main(String[] args) {
        // 1. 创建HttpClient对象
        CloseableHttpClient httpClient = HttpClients.createDefault();

        // 2. 创建HttpGet对象,设置url访问地址
        HttpGet httpGet = new HttpGet("http://www.itcast.cn");

        // 为了方便释放资源,把response放到外面来定义
        CloseableHttpResponse response =null;
        try {
            // 3. 使用httpClient对象发起请求,获取response
             response = httpClient.execute(httpGet);

            // 4. 解析响应
            // 判断状态码是否是200
            if (response.getStatusLine().getStatusCode()==200){
                //获取显示内容
                String content = EntityUtils.toString(response.getEntity(), "utf-8");
                //测试:打印长度
                System.out.println(content.length());
            }

        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            // 5. 关闭response资源
            //会有异常,try catch 一下
            try {
                response.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            // 6. 关闭浏览器资源
            //会有异常,try catch 一下
            try {
                httpClient.close();
            } catch (IOException e) {
                e.printStackTrace();
            }


        }
    }

}

?

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-05-09 13:06:47  更:2022-05-09 13:07:35 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 10:20:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码