java 爬虫 图片_我用java爬虫爬了一个图片网站

我用java爬虫爬了一个图片网站

最近想建立个网站,不想搞技术博客之类的网站了,因为像博客园还有CSDN这种足够了。平时的问题也都是这些记录一下就够了。那搞个什么网站好玩呢?

看到一个图片网站还不错,里面好多图片(当然有xxx图片了....)哈哈,其实就是闲的,同时也介绍一下java爬虫的相关用法把。

1、首先呢,爬虫应该就是两种了,一种是动态的接口请求返回的数据,这种json解析或者其他解析一下获取自己需要的数据就可以了。

2、还有就是静态html的网页之类的。这种就需要解析html dom节点的数据。其实通俗点就是类似于 jquery 选择器,html数据解析成dom节点的数据,java里面有现成的类库

看下我根据爬取的图片生成的网站效果把(代码近期准备开源,随便搞搞)

0836630a08a90622cd9a4d058a9716bb.png

需要的maven依赖,版本号自己去maven搜把

org.apache.httpcomponents

httpclient

org.jsoup

jsoup

接着介绍一下用法,

① 比如:爬取一个图片静态页面: https://www.yeitu.com/meinv/xinggan/20180919_14722.html

我们正常用jquery获取这个静态页面的标题(需要自己看dom节点的结构,用选择器获取)

2b0949563ebd26de3ac4cb53304d9784.png

② 接着,我们怎么用代码爬取这个呢?

用httpclient工具类,写一个get请求方法,最终返回一个string的html网页内容

String url="https://www.yeitu.com/meinv/xinggan/20180919_14722.html";

HttpGet get = newHttpGet(url);//设置参数

Builder customReqConf =RequestConfig.custom();

customReqConf.setConnectTimeout(connTimeout);

customReqConf.setSocketTimeout(socketTimeout);

customReqConf.setConnectionRequestTimeout(requestTimeout);

get.setConfig(customReqConf.build());

get.addHeader("Connection", "Close");

HttpResponse res;//执行 Http 请求.

if (url.startsWith("https")) {//执行 Https 请求.

client =createSSLInsecureClient();

res=client.execute(get);

}else{//执行 Http 请求.

client =HttpClientUtil.client;

res=client.execute(get);

}return EntityUtils.toString(res.getEntity(), charset);

③、接着把 html内容转换一下

Document documentInner =Jsoup.parse(htmlInner);

//这个就是图片中的jquery的选择器//$(".img_box").children("a").children("img").attr("alt");

//下面就是对应jsoup框架写法

String firstAlt = documentInner.select(".img_box").select("a").select("img").attr("alt");

总结一下,就是把jquery对应选择器的写法,写成jsoup框架的写法转换一下下。其实也没转换什么东西,自己操作一下就比较清晰了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值