使用HtmlParser的Filter实例:根据id获取相应div文本

public class ParseWork {
private Parser parser;

public ParseWork(String htmlAddress) throws ParserException {
parser = new Parser(htmlAddress);
}

/**
* 获取网页标题和正文组成的文本
* **/
protected String getText(String elementId) throws ParserException{
NodeFilter TitleFilter = new NodeClassFilter(TitleTag.class);
NodeFilter ElementIdFilter = new HasAttributeFilter("id", elementId);
OrFilter orFilter = new OrFilter(TitleFilter, ElementIdFilter); //做一个逻辑OR Filter组合
NodeList list = parser.extractAllNodesThatMatch(orFilter);

StringBuffer text = new StringBuffer();
for (int i = 0; i < list.size(); i++)
text = text.append(list.elementAt(i).toPlainTextString() + "\r\n");
return text.toString().trim();
}

public static void main(String[] args) throws ParserException, IOException {
ParseWork p = new ParseWork("E://JavaEye新闻.htm");
String mainText = p.getText("news_content");

//写网页正文文件
FileUtils.writeStringToFile(new File("E://javaeye新闻.txt"), mainText, "utf-8");
//摘要
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值