91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python的BeautifulSoup庫findAll()、find()方法的詳細講解

發布時間:2021-08-31 17:55:20 來源:億速云 閱讀:313 作者:chen 欄目:編程語言

本篇內容介紹了“python的BeautifulSoup庫findAll()、find()方法的詳細講解”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

find()和findAll()官方定義如下:

findAll(tag, attributes, recursive, text, limit, keywords)
find(tag, attributes, recursive, text, keywords)

95%的時間只用前2個參數:tag,attributes。

tag
可以傳一個標簽的名稱或多個標簽名稱組成的 Python列表做標簽參數。例如,下面的代碼將返回一個包含 HTML 文檔中所有標題標簽的列表:
.findAll({"h2","h3","h4","h5","h6","h7"})

attributes
屬性參數 attributes 是用一個 Python 字典封裝一個標簽的若干屬性和對應的屬性值。例如,下面這個函數會返回 HTML 文檔里紅色與綠色兩種顏色的 span 標簽:
.findAll("span", {"class":{"green", "red"}})
如果只返回一種顏色的,如綠色:
.findAll("span", {"class": "green"})

recursive
遞歸參數 recursive 是一個布爾變量。你想抓取 HTML 文檔標簽結構里多少層的信息?如果recursive 設置為 True , findAll 就會根據你的要求去查找標簽參數的所有子標簽,以及子標簽的子標簽。如果 recursive 設置為 False , findAll 就只查找文檔的一級標簽。 findAll默認是支持遞歸查找的( recursive 默認值是 True );一般情況下這個參數不需要設置。

text
文本參數 text 有點不同,它是用標簽的文本內容去匹配,而不是用標簽的屬性。假如我們想查找前面網頁中包含“the prince”內容的標簽數量,我們可以把之前的 findAll 方法換成下面的代碼:

nameList = bsObj.findAll(text="the prince")
print(len(nameList))

limit
范圍限制參數 limit ,顯然只用于 findAll 方法。 find 其實等價于 findAll 的 limit 等于1 時的情形。如果你只對網頁中獲取的前 x 項結果感興趣,就可以設置它。

keywords
可以讓你選擇那些具有指定屬性的標簽,屬于冗余的技術,如下所示:第一行采用keywords,第二行采用前兩個參數:tag、attributes

bsObj.findAll(id="text")
bsObj.findAll("", {"id":"text"})

用 keyword 偶爾會出現問題,尤其是在用 class 屬性查找標簽的時候,因為 class 是 Python 中受保護的關鍵字。所以一般只采用前2個參數tag、attributes即可。

“python的BeautifulSoup庫findAll()、find()方法的詳細講解”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

菏泽市| 天祝| 涡阳县| 郧西县| 沙雅县| 乳源| 民乐县| 平谷区| 吉木乃县| 固镇县| 泽州县| 邛崃市| 阿瓦提县| 揭西县| 贞丰县| 依兰县| 炎陵县| 三河市| 怀来县| 吴江市| 梨树县| 井陉县| 永宁县| 宜宾县| 西昌市| 治多县| 偃师市| 海阳市| 青冈县| 礼泉县| 涡阳县| 宝鸡市| 扶沟县| 台中市| 如东县| 东乡| 新宾| 喜德县| 滦南县| 海安县| 雅安市|