HTMLParser-2.0-SNAPSHOT-bin.zip JAVA html解析库

时间:2021-02-06 04:01:27
【文件属性】:

文件名称:HTMLParser-2.0-SNAPSHOT-bin.zip JAVA html解析库

文件大小:335KB

文件格式:ZIP

更新时间:2021-02-06 04:01:27

JAVA库 html解析

HTML解析实用库,非常好用 public class HtmlLinkParser { //获取子链接,url为网页url,filter是链接过滤器,返回该页面子链接的HashSet public static Set extracLinks(String url, LinkFilter filter) { Set links = new HashSet(); try { Parser parser = new Parser(url); parser.setEncoding("utf-8"); // 过滤 <frame >标签的 filter,用来提取 frame 标签里的 src 属性所表示的链接 NodeFilter frameFilter = new NodeFilter() { public boolean accept(Node node) { if (node.getText().startsWith("frame src=")) { return true; } else { return false; } } }; // OrFilter 接受<a>标签或<frame>标签,注意NodeClassFilter()可用来过滤一类标签,linkTag对应<标签> OrFilter linkFilter = new OrFilter(new NodeClassFilter( LinkTag.class), frameFilter); // 得到所有经过过滤的标签,结果为NodeList NodeList list = parser.extractAllNodesThatMatch(linkFilter); for (int i = 0; i < list.size(); i++) { Node tag = list.elementAt(i); if (tag instanceof LinkTag)// <a> 标签 { LinkTag link = (LinkTag) tag; String linkUrl = link.getLink();// 调用getLink()方法得到<a>标签中的链接 if (filter.accept(linkUrl))//将符合filter过滤条件的链接加入链接表 links.add(linkUrl); } else{// <frame> 标签 // 提取 frame 里 src 属性的链接如 <frame src="test.html"/> String frame = tag.getText(); int start = frame.indexOf("src="); frame = frame.substring(start); int end = frame.indexOf(" "); if (end == -1) end = frame.indexOf(">"); String frameUrl = frame.substring(5, end - 1); if (filter.accept(frameUrl)) links.add(frameUrl); } } } catch (ParserException e) {//捕捉parser的异常 e.printStackTrace(); } return links; } }


【文件预览】:
HTMLParser-2.0-SNAPSHOT 2
----license.txt(12KB)
----bin()
--------lexer(2KB)
--------beanybaby.cmd(2KB)
--------lexer.cmd(2KB)
--------translate.cmd(2KB)
--------translate(2KB)
--------filterbuilder(1KB)
--------beanybaby(2KB)
--------parser(2KB)
--------sitecapturer(2KB)
--------sitecapturer.cmd(2KB)
--------filterbuilder.cmd(2KB)
--------parser.cmd(2KB)
--------thumbelina(1KB)
--------thumbelina.cmd(2KB)
----readme.html(8KB)
----.DS_Store(6KB)
----lib()
--------htmllexer.jar(70KB)
--------sitecapturer.jar(15KB)
--------filterbuilder.jar(68KB)
--------thumbelina.jar(42KB)
--------htmlparser.jar(136KB)

网友评论