`
gcgmh
  • 浏览: 348667 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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();
		}
	}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics