您好,欢迎光临本网站![请登录][注册会员]  
文件名称: HTMLParser-2.0-SNAPSHOT-bin.zip JAVA html解析库
  所属分类: Java
  开发工具:
  文件大小: 335kb
  下载次数: 0
  上传时间: 2018-01-17
  提 供 者: qq_35******
 详细说明: 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"); // 过滤 标签的 filter,用来提取 frame 标签里的 src 属性所表示的链接 NodeFilter frameFilter = new NodeFilter() { public boo lean accept(Node node) { if (node.getText().startsWith("frame src=")) { return true; } else { return false; } } }; // OrFilter 接受标签或标签,注意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)// 标签 { LinkTag link = (LinkTag) tag; String linkUrl = link.getLink();// 调用getLink()方法得到标签中的链接 if (filter.accept(linkUrl))//将符合filter过滤条件的链接加入链接表 links.add(linkUrl); } else{// 标签 // 提取 frame 里 src 属性的链接如 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; } } ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

 相关搜索: JAVA库 html解析
 输入关键字,在本站1000多万海量源码库中尽情搜索: