java爬蟲中jsoup的使用
阿新 • • 發佈:2018-12-13
jsoup可以用來解析HTML的內容,其功能非常強大,它可以向javascript那樣直接從網頁中提取有用的資訊
例如1:
- 從html字串中解析資料
//直接從字串中獲取 public static void getParByString() { String html = "<html><head><title> 這裡是字串內容</title></head"+ ">"+"<body><p class='p1'> 這裡是 jsoup 作用的相關演示</p></body></html>"; Document doc= Jsoup.parse(html); Elements links = doc.select("p[class]"); for(Element link:links){ String linkclass = link.className(); String linkText = link.text(); System.out.println(linkText); System.out.println(linkclass); } }
- 從本地檔案中解析資料
//從本地檔案中獲取 public static void getHrefByLocal() { File input = new File("C:\\Users\\Idea\\Desktop\\html\\Home.html"); Document doc = null; try { doc = Jsoup.parse(input,"UTF-8","http://www.oschina.net/"); //這裡後面加了網址是為了解決後面絕對路徑和相對路徑的問題 } catch (IOException e) {// TODO Auto-generated catch block e.printStackTrace(); } Elements links = doc.select("a[href]"); for(Element link:links){ String linkHref = link.attr("href"); String linkText = link.text(); System.out.println(linkText+":"+linkHref); }}</span></pre>