1. 程式人生 > >Jsoup(二)-- Jsoup查找DOM元素

Jsoup(二)-- Jsoup查找DOM元素

lose mozilla except logs null response for print color

一、Jsoup查找DOM元素的方法

  getElementById(String id) 根據id 來查詢DOM

  getElementsByTag(String tagName) 根據tag 名稱來查詢DOM

  getElementsByClass(String className) 根據樣式名稱來查詢DOM

  getElementsByAttribute(String key) 根據屬性名來查詢DOM

  getElementsByAttributeValue(String key,String value) 根據屬性名和屬性值來查詢DOM

二、代碼實現

    public
static void main(String[] args) throws Exception{ // 創建httpClient實例 CloseableHttpClient httpClient = HttpClients.createDefault(); // 創建httpGet實例 HttpGet httpGet = new HttpGet("http://www.cnblogs.com"); httpGet.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0"); CloseableHttpResponse response
= httpClient.execute(httpGet); String content = null; if(response != null){ HttpEntity entity = response.getEntity(); content = EntityUtils.toString(entity, "UTF-8"); // 獲取網頁內容 Document document = Jsoup.parse(content); // 解析網頁,得到文檔對象
/** * 1.根據tag獲取元素 */ Elements elements = document.getElementsByTag("title"); // 獲取 tag為 title的DOM元素 Element element = elements.get(0); // 獲取第一個DOM元素 String title = element.text(); // 返回元素的文本 System.out.println("博客園的標題:" + title); /** * 2.根據 id獲取元素 */ Element element2 = document.getElementById("site_nav_top"); String navTop = element2.text(); System.out.println("座右銘:" + navTop); /** * 3.根據樣式獲取元素 */ Elements elements3 = document.getElementsByClass("post_item"); System.out.println("============根據樣式獲取元素============="); for(Element e : elements3){ System.out.println(e.html()); System.out.println("------------------------------"); } /** * 4.根據屬性名稱來查詢DOM */ Elements elements4 = document.getElementsByAttribute("width"); System.out.println("============根據屬性名稱來查詢DOM============="); for(Element e : elements4){ System.out.println(e.toString()); System.out.println("------------------------------"); } /** * 5.根據屬性名和屬性值來查詢DOM */ Elements elements5 = document.getElementsByAttributeValue("target", "_blank"); System.out.println("============ 根據屬性名和屬性值來查詢DOM============="); for(Element e : elements5){ System.out.println(e.toString()); System.out.println("------------------------------"); } } if(response != null){ response.close(); } if(httpClient != null){ httpClient.close(); } }

Jsoup(二)-- Jsoup查找DOM元素