Java网络爬虫小案例(详细版)

246次阅读
没有评论

有bug:修改了<scope>test</scope>后,在控制台还是不能显示日志信息,没找到解决办法

配置了log4j.properties,控制台没有显示日志信息_连胜是我偶像的博客-CSDN博客

简易版: Java网络爬虫小案例(简易版)_连胜是我偶像的博客-CSDN博客

1. 环境

JDK 1.8

IDEA

IDEA自带的Maven

Java网络爬虫小案例(详细版)

2. 创建一个Maven工程 

2.1 new 一个module

file->new->project->选择Maven:自己取名一路next

Java网络爬虫小案例(详细版)

然后file->new->modele

一个project可以有多个module。project:项目,module:模块

IntelliJ IDEA 中 Project 和 Module 的概念及区别_CG国斌的博客-CSDN博客_idea的project和module

Java网络爬虫小案例(详细版)

2.2 选择Maven 取名字然后,下一步

Java网络爬虫小案例(详细版)

结果:

Java网络爬虫小案例(详细版)

3. 导 jar 包

Maven Repository: Search/Browse/Explore (mvnrepository.com)

 点击上面网址搜索jar包。后面有所有需要的jar包代码,也可不去网页下载,翻到后面。

3.1 示例 : httpclient

Java网络爬虫小案例(详细版)

 点击4.5.2

Java网络爬虫小案例(详细版)

 复制框框内的代码,粘贴到idea中Java网络爬虫小案例(详细版)

 粘贴到 module 的 pom.xml 的 <dependencies> 中

Java网络爬虫小案例(详细版)

有爆红,选择右上角的maven,刷新下载

Java网络爬虫小案例(详细版)右下角显示下载 ,等待即可,太慢了就去配置阿里云仓库

IDEA setting.xml在哪里?配置阿里云仓库的setting.xml?_连胜是我偶像的博客-CSDN博客_idea配置阿里云仓库

Java网络爬虫小案例(详细版)

3.2 所有需要的 jar 包

Apache HttpClient

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

 SLF4J LOG4J 12 Binding Relocated

<!– https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 –> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.25</version> <scope>test</scope> </dependency>

Java网络爬虫小案例(详细版) 4. 创建日志文件

cn.itcast.crawler-first -> src -> main -> 右键resources ->new -> file -> 取名:log4j.properties 

Java网络爬虫小案例(详细版)

log4j.properties 中写入下列代码:

1og4j.rootLogger=DEBUG,A1 log4j.logger.cn.itcast = DEBUG

log4j.appender.A1=org.apache.log4j.ConsoleAppender log4j.appender.A1.layout=org.apache.log4j.PatternLayout log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MW-dd HH:mm:Ss,SS5)[%t][%c]-[%p] %m%n

Java网络爬虫小案例(详细版)

 5. 实例:创建测试文件

5.1 创建一个包 

cn.itcast.crawler-first -> src -> main -> 右键java ->new ->package -> 取名:cn.itcast. crawler.test

Java网络爬虫小案例(详细版)

 解决idea右键没有java class选项 – 知乎 (zhihu.com)

5.2 在test包中创建一个Java class文件

Java网络爬虫小案例(详细版)

写入代码

package cn.itcast.crawler.test;

import org.apache.http.HttpEntity; 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;

public class CrawlerFirst { public static void main(String[] args) throws Exception { // 1. 打开浏览器 : 创建HttpClient对象 // 打入 HttpClients.createDefault(),按下ctrl+alt+v,自动补全等号左边 CloseableHttpClient httpClient = HttpClients.createDefault();

// 2. 输入网址 : 发起get请求创建HttpGet对象 // url 中是需要被解析的网址 HttpGet httpGet = new HttpGet("http://www.itcast.cn");

// 3. 按回车,发起请求,返回响应 : 使用httpClient对象发起请求 // 会有一个异常,throws Exception即可 CloseableHttpResponse response = httpClient.execute(httpGet);

// 4. 解析响应,获取数据 // 判断状态码是否是200 if (response.getStatusLine().getStatusCode()==200){ // 拿到响应体 HttpEntity httpEntity = response.getEntity(); // 解析响应体,拿到静态页面的数据,将获取到的数据装入string中 String content = EntityUtils.toString(httpEntity, "utf-8");

// 打印content 查看效果 // 快捷键输入 idea:sout 按enter; eclipse : syso 按alt+/ 。 System.out.println(content); } } }

 运行结果:

Java网络爬虫小案例(详细版)

Java网络爬虫小案例(详细版)

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:Python教程2022-10-28发表,共计2705字。
新手QQ群:570568346,欢迎进群讨论 Python51学习