日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

jsoup 获取html中body内容_Java 进阶 利用Jsoup获取HTML页面的各分页中的标题信息...

發布時間:2023/12/2 HTML 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jsoup 获取html中body内容_Java 进阶 利用Jsoup获取HTML页面的各分页中的标题信息... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡單介紹一下Jsoup

Jsoup是一款Java 的HTML解析器,可直接解析某個URL地址、HTML文本內容。它提供了一套非常省力的API,可通過DOM,CSS以及類似于Xpath,jQuery的操作方法來取出和操作元素和數據。

使用Jsoup,需要導入Jsoup所需Jar包,Maven工程,直接在pom.xml中引入以下依賴

org.jsoup

jsoup

1.11.3

以下用一個簡單的例子使用JSoup,獲取網頁中各分頁列表中文章的標題,并輸出。這里用到testng,需要提前引入testng相關jar包。

新增測試類JsoupTest

package com.jsoup;

import com.mashape.unirest.http.HttpResponse;

import com.mashape.unirest.http.Unirest;

import com.mashape.unirest.http.exceptions.UnirestException;

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.nodes.Element;

import org.jsoup.select.Elements;

import org.testng.annotations.Test;

public class JsoupTest {

Elements elements;

@Test

public void getAllPageTitle() throws UnirestException {

int page =1 ;

while(true) {

HttpResponse response = Unirest.get("https://blog.csdn.net/deng214/article/month/2018/05/" + page + "?").asString();

String body = response.getBody();

Document document = Jsoup.parse(body);

elements = document.select("div.article-list");

elements = elements.first().children().select("div:not(div[style=display: none;])").remove();

elements = elements.select("h4>a");

int size = elements.size();

System.out.println("-------------------- 第" + page + "頁,顯示"+size+"條數據-------------------- ");

if (size == 0) {

break;

}

if (size < 20 && size > 0) {

getElement();

break;

} else {

getElement();

page++;

}

}

}

public void getElement(){

for (int i = 0; i < elements.size(); i++) {

Element element = elements.get(i);

String href = element.attr("href");

String text = element.text();

System.out.println("標題:"+text+"\t 鏈接:"+href);

}

}

}

上述類中,getAllPageTitle方法中用到了unirest(使用Unirest發送POST請求),發送向html發送get請求,獲取響應內容,通過Jsoup解析

坑一:因為有div是隱藏的或不屬于標題鏈接,所以需要排除。這里有坑,花了點時間,可能也是因為對jsoup不熟。

image.png

elements = document.select("div.article-list");

elements = elements.first().children().select("div:not(div[style=display: none;])").remove();

elements = elements.select("h4>a");

坑二:在遍歷到最后一頁時,下一頁并不是不顯示,而是為只讀無法點擊,所以需要判斷當前頁是否為最后一頁,如果是就需要跳出循環

if (size == 0) {

break;

}

if (size < 20 && size > 0) {

getElement();

break;

} else {

getElement();

page++;

}

最后輸出結果是

-------------------- 第1頁,顯示20條數據--------------------

標題:轉 史上最簡單的 MySQL 教程 鏈接:https://blog.csdn.net/deng214/article/details/80318148

標題:轉 用SQL語句去掉重復的記錄 鏈接:https://blog.csdn.net/deng214/article/details/80430109

標題:轉 java中進行二進制,八進制,十六進制,十進制間,壓縮BCD編碼進行相互轉換 鏈接:https://blog.csdn.net/deng214/article/details/80429329

標題:轉 java二進制,字節數組,字符,十六進制,BCD編碼轉換 鏈接:https://blog.csdn.net/deng214/article/details/80429273

標題:原 利用MySQL數據庫自帶加密函數進行加密 鏈接:https://blog.csdn.net/deng214/article/details/80429247

標題:原 mysql對密碼進行加密,以及忘記加密后密碼的解決 鏈接:https://blog.csdn.net/deng214/article/details/80429242

標題:轉 java日期時間各種變換及處理 鏈接:https://blog.csdn.net/deng214/article/details/80417020

標題:轉 MySQL查詢語句測試練習題 鏈接:https://blog.csdn.net/deng214/article/details/80414565

標題:轉 MySq常用l查詢語句 鏈接:https://blog.csdn.net/deng214/article/details/80414523

標題:轉 MySQL 復雜查詢語句2 鏈接:https://blog.csdn.net/deng214/article/details/80414504

標題:原 Mysql復雜查詢語句匯總 鏈接:https://blog.csdn.net/deng214/article/details/80414468

標題:轉 MySQL 50條基礎查詢語句 鏈接:https://blog.csdn.net/deng214/article/details/80414458

標題:轉 網絡爬蟲URLConnection的使用 鏈接:https://blog.csdn.net/deng214/article/details/80414359

標題:轉 Java爬蟲入門簡介(五)——抓包工具的使用以及使用HttpClient模擬用戶登錄的訪問 鏈接:https://blog.csdn.net/deng214/article/details/80414334

標題:轉 Java爬蟲入門簡介(四)——HttpClient保存使用Cookie登錄 鏈接:https://blog.csdn.net/deng214/article/details/80400998

標題:轉 Java爬蟲入門簡介(三) —— Jsoup解析HTML頁面 鏈接:https://blog.csdn.net/deng214/article/details/80400984

標題:轉 Java爬蟲入門簡介(二) —— HttpClient詳細使用方法 鏈接:https://blog.csdn.net/deng214/article/details/80400944

標題:轉 Java爬蟲入門簡介(一) —— HttpClient請求 鏈接:https://blog.csdn.net/deng214/article/details/80400916

標題:轉 Java讀取和操作大數據文本數據 鏈接:https://blog.csdn.net/deng214/article/details/80400886

標題:轉 Eclipse使用Maven插件的簡單介紹 鏈接:https://blog.csdn.net/deng214/article/details/80400797

-------------------- 第2頁,顯示20條數據--------------------

標題:轉 MySQL啟用中文全文檢索功能 鏈接:https://blog.csdn.net/deng214/article/details/80400636

標題:轉 詳述 MySQL 導出數據遇到 secure-file-priv 的問題 鏈接:https://blog.csdn.net/deng214/article/details/80400590

標題:轉 詳述查看 MySQL 數據文件存儲位置的方法 鏈接:https://blog.csdn.net/deng214/article/details/80400585

標題:轉 詳述 MySQL 數據庫輸入密碼后閃退的問題及解決方案 鏈接:https://blog.csdn.net/deng214/article/details/80400579

標題:轉 詳述 MySQL 數據庫的安裝及配置 鏈接:https://blog.csdn.net/deng214/article/details/80393015

標題:轉 史上最簡單的 MySQL 教程(四十四)「存儲過程」 鏈接:https://blog.csdn.net/deng214/article/details/80392996

標題:轉 史上最簡單的 MySQL 教程(四十三)「函數」 鏈接:https://blog.csdn.net/deng214/article/details/80392990

標題:轉 史上最簡單的 MySQL 教程(四十二)「代碼執行結構」 鏈接:https://blog.csdn.net/deng214/article/details/80392977

標題:轉 史上最簡單的 MySQL 教程(四十一)「觸發器」 鏈接:https://blog.csdn.net/deng214/article/details/80392958

標題:轉 史上最簡單的 MySQL 教程(四十)「數據庫變量」 鏈接:https://blog.csdn.net/deng214/article/details/80392946

標題:轉 史上最簡單的 MySQL 教程(三十九)「事務(下)」 鏈接:https://blog.csdn.net/deng214/article/details/80392931

標題:轉 史上最簡單的 MySQL 教程(三十八)「事務(上)」 鏈接:https://blog.csdn.net/deng214/article/details/80392913

標題:轉 史上最簡單的 MySQL 教程(三十七)「數據備份與還原(下)」 鏈接:https://blog.csdn.net/deng214/article/details/80392905

標題:轉 史上最簡單的 MySQL 教程(三十六)「數據備份與還原(中)」 鏈接:https://blog.csdn.net/deng214/article/details/80392892

標題:轉 史上最簡單的 MySQL 教程(三十五)「數據備份與還原(上)」 鏈接:https://blog.csdn.net/deng214/article/details/80359451

標題:轉 史上最簡單的 MySQL 教程(三十四)「視圖(下)」 鏈接:https://blog.csdn.net/deng214/article/details/80359439

標題:轉 史上最簡單的 MySQL 教程(三十三)「視圖(上)」 鏈接:https://blog.csdn.net/deng214/article/details/80359430

標題:轉 史上最簡單的 MySQL 教程(三十二)「子查詢(下)」 鏈接:https://blog.csdn.net/deng214/article/details/80359427

標題:轉 史上最簡單的 MySQL 教程(三十一)「子查詢(上)」 鏈接:https://blog.csdn.net/deng214/article/details/80359416

標題:轉 史上最簡單的 MySQL 教程(三十)「聯合查詢」 鏈接:https://blog.csdn.net/deng214/article/details/80359398

-------------------- 第3頁,顯示20條數據--------------------

標題:轉 史上最簡單的 MySQL 教程(二十九)「外鍵(下)」 鏈接:https://blog.csdn.net/deng214/article/details/80359388

標題:轉 史上最簡單的 MySQL 教程(二十八)「外鍵(上)」 鏈接:https://blog.csdn.net/deng214/article/details/80359379

標題:轉 史上最簡單的 MySQL 教程(二十七)「連接查詢(下)」 鏈接:https://blog.csdn.net/deng214/article/details/80359369

標題:轉 史上最簡單的 MySQL 教程(二十六)「連接查詢(上)」 鏈接:https://blog.csdn.net/deng214/article/details/80359361

標題:轉 國密SM2算法密鑰派生函數KDF的實現 鏈接:https://blog.csdn.net/deng214/article/details/80345570

標題:轉 高速公路ETC卡簽之我見9-常見算法 鏈接:https://blog.csdn.net/deng214/article/details/80345558

標題:轉 高速公路ETC卡簽之我見8-OBU發行 鏈接:https://blog.csdn.net/deng214/article/details/80345554

標題:轉 高速公路ETC卡簽之我見7-用戶卡發行 鏈接:https://blog.csdn.net/deng214/article/details/80345552

標題:轉 高速公路ETC卡簽之我見6-省級密鑰系統建設 鏈接:https://blog.csdn.net/deng214/article/details/80345534

標題:轉 高速公路ETC卡簽之我見5-國標密鑰體系介紹 鏈接:https://blog.csdn.net/deng214/article/details/80345532

標題:轉 高速公路ETC卡簽之我見4-卡簽結構說明 鏈接:https://blog.csdn.net/deng214/article/details/80345526

標題:轉 高速公路ETC卡簽之我見3-卡片圈存 鏈接:https://blog.csdn.net/deng214/article/details/80345521

標題:轉 高速公路ETC卡簽之我見2-卡片消費 鏈接:https://blog.csdn.net/deng214/article/details/80345517

標題:轉 高速公路ETC卡簽1-概述 鏈接:https://blog.csdn.net/deng214/article/details/80345513

標題:轉 JAVA 數據表反射實體類,自動生成實體類 鏈接:https://blog.csdn.net/deng214/article/details/80337534

標題:轉 java--生成實體類方法 鏈接:https://blog.csdn.net/deng214/article/details/80337517

標題:轉 java--封裝淺談 鏈接:https://blog.csdn.net/deng214/article/details/80337474

標題:轉 Java -- 20個非常有用的Java程序片段 鏈接:https://blog.csdn.net/deng214/article/details/80337453

標題:轉 史上最簡單的 MySQL 教程(二十五)「數據的高級操作 之 查詢(下)」 鏈接:https://blog.csdn.net/deng214/article/details/80336875

標題:轉 史上最簡單的 MySQL 教程(二十四)「數據的高級操作 之 查詢(中)」 鏈接:https://blog.csdn.net/deng214/article/details/80336858

-------------------- 第4頁,顯示20條數據--------------------

標題:轉 史上最簡單的 MySQL 教程(二十三)「數據的高級操作 之 查詢(上)」 鏈接:https://blog.csdn.net/deng214/article/details/80336849

標題:轉 史上最簡單的 MySQL 教程(二十二)[數據的高級操作 之 更新 & 刪除] 鏈接:https://blog.csdn.net/deng214/article/details/80336832

標題:轉 史上最簡單的 MySQL 教程(二十一)「數據的高級操作 之 蠕蟲復制」 鏈接:https://blog.csdn.net/deng214/article/details/80336809

標題:轉 史上最簡單的 MySQL 教程(二十)「數據的高級操作 之 主鍵沖突」 鏈接:https://blog.csdn.net/deng214/article/details/80336797

標題:轉 史上最簡單的 MySQL 教程(十九)「范式」 鏈接:https://blog.csdn.net/deng214/article/details/80318092

標題:轉 史上最簡單的 MySQL 教程(十八)「關系」 鏈接:https://blog.csdn.net/deng214/article/details/80318084

標題:轉 史上最簡單的 MySQL 教程(十七)「索引」 鏈接:https://blog.csdn.net/deng214/article/details/80318073

標題:轉 史上最簡單的 MySQL 教程(十六)「列屬性 之 唯一鍵」 鏈接:https://blog.csdn.net/deng214/article/details/80318064

標題:轉 史上最簡單的 MySQL 教程(十五)「列屬性 之 自動增長」 鏈接:https://blog.csdn.net/deng214/article/details/80318053

標題:轉 史上最簡單的 MySQL 教程(十四)「列屬性 之 主鍵」 鏈接:https://blog.csdn.net/deng214/article/details/80318033

標題:轉 史上最簡單的 MySQL 教程(十三)「列屬性 之 空屬性、列描述和默認值」 鏈接:https://blog.csdn.net/deng214/article/details/80318026

標題:轉 史上最簡單的 MySQL 教程(十二)「記錄長度」 鏈接:https://blog.csdn.net/deng214/article/details/80318012

標題:轉 史上最簡單的 MySQL 教程(十一)「列類型 之 字符串型」 鏈接:https://blog.csdn.net/deng214/article/details/80318000

標題:轉 史上最簡單的 MySQL 教程(十)「列類型 之 日期時間型」 鏈接:https://blog.csdn.net/deng214/article/details/80277881

標題:轉 史上最簡單的 MySQL 教程(九)「列類型 之 數值型」 鏈接:https://blog.csdn.net/deng214/article/details/80277833

標題:轉 史上最簡單的 MySQL 教程(八)「校對集問題」 鏈接:https://blog.csdn.net/deng214/article/details/80277811

標題:轉 史上最簡單的 MySQL 教程(七)「中文數據問題」 鏈接:https://blog.csdn.net/deng214/article/details/80277795

標題:轉 史上最簡單的 MySQL 教程(六)「SQL 基本操作 之 數據操作」 鏈接:https://blog.csdn.net/deng214/article/details/80277784

標題:轉 史上最簡單的 MySQL 教程(五)「SQL 基本操作 之 表操作」 鏈接:https://blog.csdn.net/deng214/article/details/80277744

標題:轉 史上最簡單的 MySQL 教程(四)「SQL 基本操作 之 庫操作」 鏈接:https://blog.csdn.net/deng214/article/details/80277711

-------------------- 第5頁,顯示3條數據--------------------

標題:轉 史上最簡單的 MySQL 教程(三)「 MySQL 數據庫」 鏈接:https://blog.csdn.net/deng214/article/details/80277693

標題:轉 史上最簡單的 MySQL 教程(二)「關系型數據庫」 鏈接:https://blog.csdn.net/deng214/article/details/80277669

標題:轉 史上最簡單的 MySQL 教程(一)「數據庫」 鏈接:https://blog.csdn.net/deng214/article/details/80277623

===============================================

Default Suite

Total tests run: 1, Failures: 0, Skips: 0

===============================================

jsoup使用手冊可參考文章:Jsoup詳解(官方)

END

如果你喜歡我的分享,那就在右下角點個喜歡吧

你的鼓勵是我最大的動力來源,在此深表感恩

軟件測試的路上,我們可以互相關注,相互學習,共同進步,微信ID:929194573

總結

以上是生活随笔為你收集整理的jsoup 获取html中body内容_Java 进阶 利用Jsoup获取HTML页面的各分页中的标题信息...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。