JAVA爬虫学习之单线程httpclient一
爬虫介绍
爬虫就是获取网页的内容,机器获取.
本系列教程目标,使用java爬取小说网站的小说,并输出txt文档
代码:https://github.com/nalipiaoxiang/Reptile
感想
新来一个同事是做python,看他使用python爬取网页内容溜得很,所以也想用java试试,以前没听说过java爬虫,但是Google了一下,发现java的生态实在是太好了,各种爬虫,多线程,分布式,代理…几乎python有的,java也有…
废话不多说…开工
爬虫是什么
爬虫是什么?爬虫就是机器获取网络上人想要的东西,往往几百个页面只有几条数据我们想要,直白说就是获取页面内容,
- httpclient
httpclient可以理解成一个没有界面的浏览器,使用httpclient获取网页内容 - 上代码
使用maven,添加依赖
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.8</version>
</dependency>
test01
public static void main(String[] args) {
String url="www.baidu.com";
CloseableHttpClient httpClient = HttpClients.createDefault();
HttpGet httpGet = new HttpGet(url);
CloseableHttpResponse response = httpClient.execute(httpGet);
//注意编码,如果设置不当会出现乱码
String html = EntityUtils.toString(response.getEntity(), "utf-8");
System.out.println(html);
}
这基本就是模拟浏览器访问网页,并且把网页代码给打印出来
这就是一个简单的爬虫.
下面再介绍一个解析网页的工具,使用httpclient获取了一个网页的html代码,但是大部分都不是我们想要的,如何筛选我们想要的呢?介绍一款解析网页神奇,Jsoup.能快速定位标签并获取标签内容.