简单的提取html中的TextNode

eclipse:导入htmlparser.jar

import org.htmlparser.util.*;
import org.htmlparser.filters.*;
import org.htmlparser.NodeFilter;
import org.htmlparser.Parser;
import org.htmlparser.nodes.TextNode;
import org.htmlparser.util.ParserException;
import org.htmlparser.visitors.TextExtractingVisitor;;

public class HtmlParserExtraction {
    public static void main(String[] args) throws ParserException
    {
        try {
            ParseHtmlText("http://www.hzau.edu.cn/2014/ch/", "GB2312");
            
        } catch (ParserException e) {
            e.printStackTrace();
        }
        
    }
    
    public static void ParseHtmlText(String url, String pageEncoding) throws ParserException
    {
        Parser parser = new Parser(url);    //访问目标网站
        parser.setEncoding(pageEncoding);    //设置解析编码的格式
        TextExtractingVisitor visitor = new TextExtractingVisitor();    //生成文本内容抽取对象
        NodeFilter textFilter = new NodeClassFilter(TextNode.class);    //生成文本过滤器
        NodeList nodes = parser.extractAllNodesThatMatch(textFilter);    //利用文本过滤解析文档
        for (int i = 0; i < nodes.size(); i++) {
            TextNode    textNode = (TextNode) nodes.elementAt(i);    //获取文本结点
            String         line = textNode.toPlainTextString().trim();    //转换成纯文本
            if(line.equals(""))        continue;
            System.out.println(line);
        }
        
        parser.visitAllNodesWith(visitor);    //访问网页所有的结点
        System.out.println(visitor.getExtractedText());
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值