zjavax的gravatar头像
zjavax 2016-11-03 13:15:34
Jsoup解析出html中的img元素

jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

Jsoup解析出html中的img元素

博客项目有个需求。展示博客列表的时候,显示一些博客里的图片,增强用户体验;

这里的话,有两种方案,第一种 是在后台处理,把解析好的图片存集合里,然后转发到页面,遍历显示;还有一种是把博客内容送到页面,用Jquery处理。

我考虑了下。还是在后台处理好比较好,因为项目本身用到了 cnd加速,所以在前端处理反而影响效率。

在后端处理,可以使用Jsoup,很方便;

Jsoup主页:http://jsoup.org/

maven地址:

1

2

3

4

5

<dependency>

        <groupId>org.jsoup</groupId>

        <artifactId>jsoup</artifactId>

        <version>1.8.3</version>

    </dependency>

 

 

这里给下关键代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

for(Blog blog:blogList){

            List<String> imagesList=blog.getImagesList();

            String blogInfo=blog.getContent();

            Document doc=Jsoup.parse(blogInfo);

            Elements jpgs=doc.select("img[src$=.jpg]"); // 查找扩展名是jpg的图片

            for(int i=0;i<jpgs.size();i++){

                Element jpg=jpgs.get(i);

                imagesList.add(jpg.toString());

                if(i==2){

                    break;

                }

            }

        }

主要涉及到一些选择器。不难。大家可以参考下官方文档。或者百度很容易上手。


打赏
最近浏览
lm_1212  LV3 2018年8月21日
liu83428190  LV6 2018年6月1日
dfaghrs  LV19 2017年12月29日
kyoxue  LV10 2017年11月9日
203778513  LV9 2017年9月13日
best2018  LV46 2017年7月14日
qweqwrqw  LV6 2017年7月4日
金仁杰  LV2 2017年5月5日
dashu  LV10 2017年2月14日
woshiganbo  LV1 2016年12月29日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友