java取html标签

package com.zsjz.utils.tools;

import java.net.URL;
import java.util.ArrayList;

import org.htmlparser.NodeFilter;
import org.htmlparser.Parser;
import org.htmlparser.filters.TagNameFilter;
import org.htmlparser.nodes.TagNode;
import org.htmlparser.tags.ImageTag;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
import org.htmlparser.visitors.TextExtractingVisitor;

public class HtmlToString {
    public static String htmlToString(String html){
        String txt = "";
        try {
            Parser body_parser = new Parser(html);
            body_parser.setEncoding("utf-8");
            TextExtractingVisitor visitor = new TextExtractingVisitor();
            body_parser.visitAllNodesWith(visitor);
            txt = visitor.getExtractedText();
        } catch (ParserException e) {
            e.printStackTrace();
        }
        return txt;
    }
    
    public static ArrayList<TagNode> htmlImgToList(String html,String tag){
        ArrayList list = new ArrayList();
        Parser parser = Parser.createParser(html, "utf-8");
        tag = tag.toUpperCase();
        NodeFilter filter = new TagNameFilter(tag);
        NodeList nodelist;
        try {
            nodelist = parser.extractAllNodesThatMatch(filter);
            for(int i = 0; i < nodelist.size(); i++){
                TagNode node = (TagNode)nodelist.elementAt(i);
                list.add(node);
                /*System.out.println(node.toString());*/
            }
        } catch (ParserException e) {
            e.printStackTrace();
        }
        return list;
    }
    
    
    public static void main(String[] ar){
        String html = "<p>&nbsp;&nbsp;ffffff<img src='http://upload.zsjz888.com/goodsfile/20150622/7a33f25a-cafa-4f37-ac27-df1cb263055b.jpg' alt='' /></p><img src='http://upload.zsjz888.com/goodsfile/20150622/7a33f25a-cafa-4f37-ac27-df1cb263055b.jpg' alt='' /><p>&nbsp;</p><p>考上一本,上个好大学,是无数考生和家长的愿望。那么,在考分上线的情况下,如何合理地选择志愿学校呢?本文将针对高考考生的需求,对中国100多所好大学进行一个系统的划分和介绍,帮助考生找到最适合自己的学校。目前,社会上判断好大学的标准,有两个常见的误区。</p><p>&nbsp;</p><p><strong>误区一:凭借口碑选择学校</strong></p><p>. 根据口碑选择大学只适用于极少数的情况,因为除了清华、北大等极少数公认的顶级大学,绝大部分学校都不具备超凡脱俗的实力,所谓的口碑实际上是来自于部分人群的更熟悉和更了解。人们由于自身经历和生活中接受到的一些零散的信息,对有些大学比较熟悉以及产生了一些或好或坏的印象,而对另外99%的学校则是完全陌生的,在这样的基础上形成的意见具有很强的片面性和主观性。即便是高等教育领域的工作者,也都会受限于个人的经历和视野,很难对大部分学校的情况做出全面的判断。依靠口碑推荐的方式来选择学校,具有很强的不确定性,风险也很高。</p>";
        String html1="ddddddddd";
        //System.out.print(HtmlToString.htmlToString(html1));
        ArrayList<TagNode> list = HtmlToString.htmlImgToList(html,"img");
        for(int i=0;i<list.size();i++){
        String s1=list.get(0).getAttribute("src");
        System.out.println(s1);}
        

        
    }
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值