htmlparser获取网页上所有有用链接的方法


public static void getAllLink(String html, String parentUrl) {
Parser parser = new Parser();
try {
parser.setInputHTML(html);
NodeFilter filter = new NodeClassFilter(LinkTag.class);
NodeList nodes = parser.parse(filter);
for (Node node : nodes.toNodeArray()) {
LinkTag linkTag = (LinkTag) node;
String link = linkTag.getLink().trim();
// 过滤,过滤方法可以添加,比如在增加只爬去本域名或本主机名下的网站等等
if (!"".equals(link)) {
//处理一下那些不是以“http://”开头的url,比如以"/html/....或 html/...."开头的
URI uri = new URI(parentUrl);
URI _uri = new URI(uri, link);
String newUrl = _uri.toString();
urls.add(link);
}
}

} catch (ParserException e) {
throw new RuntimeException("htmlparser解析html文件时异常" + e);
} catch (URIException e) {
e.printStackTrace();
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值