有bug:修改了<scope>test</scope>后,在控制台还是不能显示日志信息,没找到解决办法
配置了log4j.properties,控制台没有显示日志信息_连胜是我偶像的博客-CSDN博客
简易版: Java网络爬虫小案例(简易版)_连胜是我偶像的博客-CSDN博客
1. 环境
JDK 1.8
IDEA
IDEA自带的Maven
2. 创建一个Maven工程
2.1 new 一个module
file->new->project->选择Maven:自己取名一路next
然后file->new->modele
一个project可以有多个module。project:项目,module:模块
IntelliJ IDEA 中 Project 和 Module 的概念及区别_CG国斌的博客-CSDN博客_idea的project和module
2.2 选择Maven 取名字然后,下一步
结果:
3. 导 jar 包
Maven Repository: Search/Browse/Explore (mvnrepository.com)
点击上面网址搜索jar包。后面有所有需要的jar包代码,也可不去网页下载,翻到后面。
3.1 示例 : httpclient
点击4.5.2
复制框框内的代码,粘贴到idea中
粘贴到 module 的 pom.xml 的 <dependencies> 中
有爆红,选择右上角的maven,刷新下载
右下角显示下载 ,等待即可,太慢了就去配置阿里云仓库
IDEA setting.xml在哪里?配置阿里云仓库的setting.xml?_连胜是我偶像的博客-CSDN博客_idea配置阿里云仓库
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>
4. 创建日志文件
cn.itcast.crawler-first -> src -> main -> 右键resources ->new -> file -> 取名:log4j.properties
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
5. 实例:创建测试文件
5.1 创建一个包
cn.itcast.crawler-first -> src -> main -> 右键java ->new ->package -> 取名:cn.itcast. crawler.test
解决idea右键没有java class选项 – 知乎 (zhihu.com)
5.2 在test包中创建一个Java class文件
写入代码
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); } } }
运行结果:
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试