有兩個問題,記錄一下 :html
一、xpath以下格式(經過firebug下面的xpath插件得到的路徑):java
html/body/div[2]/div[1]/div[3]/ul/li/div/div/span/span[2]
此時htmlcleaner調用xpath查找元素的方法找不到該元素(肯定及確定該界面有這元素),將路徑修改成:node
/body/div[2]/div[1]/div[3]/ul/li/div/div/span/span[2]
就能夠爬取到了。lua
二、爬取元素的代碼:(記錄一下啦)url
Document doc = getDocument(url); if(doc!=null && doc.hasText()){ // System.out.println(doc.html()); String document = formatContext(doc.html()); System.out.println(document); TagNode node = cleaner.clean(document); Object[] ns = null; try { ns = node.evaluateXPath(xpath); } catch (XPatherException e) { e.printStackTrace(); } if (ns.length > 0) { for (Object on : ns) { TagNode n = (TagNode) on; //下面的兩個方法均可以取到標籤裏面的內容 String text = cleaner.getInnerHtml(n); System.out.println(text); System.out.println(url + n.getText().toString()); } } else { return null;// 規則不對,返回空 }