码迷,mamicode.com
首页 > Web开发 > 详细

Jsoup-数据修改

时间:2014-07-16 17:47:50      阅读:307      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   http   java   color   

在你解析一个Document之后可能想修改其中的某些属性值,然后再保存到磁盘或都输出到前台页面。

可以使用属性设置方法 Element.attr(String key, String value), 和 Elements.attr(String key, String value).

假如你需要修改一个元素的 class 属性,可以使用 Element.addClass(String className) 和Element.removeClass(String className) 方法。

Elements 提供了批量操作元素属性和class的方法,比如:要为div中的每一个a元素都添加一个rel="nofollow" 可以使用如下方法:

    @Test
    public void setAttr(){
        String html = "<div class=comments><a>1</a><a>2</a></div>";
        Document doc =Jsoup.parse(html);
        doc.select("div.comments a").attr("rel", "nofollow");
        System.out.println(doc);
    }

Element中的其它方法一样,attr 方法也是返回当 Element (或在使用选择器是返回 Elements集合)。这样能够很方便使用方法连用的书写方式。比如:

doc.select("div.masthead").attr("title", "jsoup").addClass("round-box");

设置一个元素的HTML内容

你需要一个元素中的HTML内容

可以使用Element中的HTML设置方法具体如下:

    @Test
    public void setHtml(){
        String html = "<span></span><div class=comments><a>1</a><a>2</a></div>";
        Document doc =Jsoup.parse(html);
        Element div = doc.select("div").first(); // <div></div>
        div.html("<p>lorem ipsum</p>"); // <div><p>lorem ipsum</p></div>
        div.prepend("<p>First</p>");//在div前添加html内容
        div.append("<p>Last</p>");//在div之后添加html内容
        System.out.println(doc);
        Element span = doc.select("span").first(); // <span>One</span>
        span.wrap("<li><a href=‘http://example.com/‘></a></li>");
        System.out.println(doc);
    }

设置元素的文本内容

你需要修改一个HTML文档中的文本内容

可以使用Element的设置方法:

    @Test
    public void setText(){
        String html = "<span></span><div class=comments><a>1</a><a>2</a></div>";
        Document doc =Jsoup.parse(html);
        Element div = doc.select("div").first(); // <div></div>
        div.text("5 > 4");
        div.prepend("First");
        div.append("Last");
        System.out.println(div);
    }

文本设置方法与 HTML setter 方法一样:

对于传入的文本如果含有像 <> 等这样的字符,将以文本处理,而非HTML。

 

 

Jsoup-数据修改,布布扣,bubuko.com

Jsoup-数据修改

标签:des   style   blog   http   java   color   

原文地址:http://www.cnblogs.com/yangml/p/3847664.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!