基于Xpath采集和讯网经济人物Java实现

背景需求:

采集和讯网的财经人物,url为:http://renwu.hexun.com/,采集人物名称然后保存。

思路:

基于dom4j采集,根据url规则遍历获取,直到没有人物数据,基于xpath解析出最终的人物名称。

实现:

private static void getRWData(Set<String> set) throws Exception {
	String xpath = "/*[name()='HTML']/*[name()='BODY']/*[name()='DIV']/*[name()='DIV']/*[name()='DIV']/*[name()='DIV']/*[name()='DIV']/*[name()='DIV']/*[name()='UL']/*[name()='LI']/*[name()='A']";
	DOMParser parser = new DOMParser();
	for (int i = 1; i < 10000; i++) {
		parser.parse("http://renwu.hexun.com/search.aspx?z=All&Filter=All&page="+i);

		DOMReader domReader = new DOMReader();
		Document document = domReader.read(parser.getDocument());
		Element root = document.getRootElement();
		List<Node> nodes = root.selectNodes(xpath);
		if(nodes.isEmpty()){
			return;
		}
		for (Node node : nodes) {
			set.add(node.getText());
		}
	}
	
}

保存在Set中供后期使用 

 

 

 

你可能感兴趣的:(java实现)