怎么安裝和使用Python第三方模塊beautifulsoup?針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
在蓮花等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計、做網(wǎng)站 網(wǎng)站設(shè)計制作按需求定制設(shè)計,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)營銷推廣,成都外貿(mào)網(wǎng)站建設(shè)公司,蓮花網(wǎng)站建設(shè)費用合理。
beautiful soup是Python的一個HTML或XML的解析庫。它提供一個簡單的、Python式的函數(shù)來處理導(dǎo)航、搜索、修改分析數(shù)等功能。它是一個工具箱,通過解析文檔為用戶提供需要抓取的數(shù)據(jù),因為簡單,所以不需要多少代碼就可以寫出一個完整的應(yīng)用程序。
beautiful soup自動將輸入文檔轉(zhuǎn)化為Unicode編碼,輸出文檔轉(zhuǎn)化為utf-8編碼。你不需要考慮編碼方式,除非文檔沒有指定一個編碼方式,這時你僅僅需要說明一下原始的編碼方式就可以了。
安裝
windows下:
首先進入pip的安裝目錄,位于Scripts文件夾中
然后執(zhí)行:
pip install beautifulsoup4
Linux下:
$ sudo apt-get python-bs4(python2) $ sudo apt-get python3-bs4(python3)
Beautiful Soup常用的方法和屬性
1.find_all() 方法:find_all()方法搜索當(dāng)前tag的所有符合過濾條件的tag子節(jié)點。在搜索子節(jié)點的時候,我們不僅可以制定要搜索的子節(jié)點的標簽名,還可以添加過濾條件,更精確的選擇我們需要的子節(jié)點。
2.find() 方法:find()方法和find_all()方法的參數(shù)和用法幾乎一樣,只不過find()方法只選取符合條件的第一個標簽。
3.get_text()方法:如果只想得到tag中包含的文本內(nèi)容,那么可以使用get_text()方法,這個方法獲取到tag中包含的所有文版內(nèi)容包括子孫tag中的內(nèi)容,并將結(jié)果作為Unicode字符串返回。
4.獲取節(jié)點屬性的方法:如果我們想要獲取節(jié)點的屬性,比如對于<a href="www.baidu.com"></a>,我們想獲取它的href屬性值,即www.baidu.com。
5.select()方法:通過使用beautifulsoup庫中的select()方法,我們可以使用CSS選擇器來選擇我們需要的標簽。也就是說,我們可以通過標簽名,標簽的class、標簽的id,通過標簽的name、href等屬性來選擇我們的元素。使用該方法返回的是一個迭代器,我們可以通過for…in…循環(huán)遍歷。
6.string屬性:如果一個節(jié)點只包含一個文本節(jié)點,或者是只包含一個節(jié)點,那么可以使用該屬性獲取該文本節(jié)點的文本內(nèi)容,或者是這個節(jié)點的文本內(nèi)容。例如:對于<div>hahaha</div>和<div><p>hahaha</p></div>,使用返回的結(jié)果是一樣的。
7.strings屬性:如果一個節(jié)點下面有很多子孫節(jié)點,我們可以使用strings屬性來獲取其子孫節(jié)點的所有文本。該屬性最終返回的是一個迭代器,我們可以通過for…in…循環(huán)來遍歷。
8.stripped_strings屬性:在使用上述strings屬性獲取一個節(jié)點中后代文本的時候,可能或出現(xiàn)換行和空格等空白文本,這樣在處理的時候會出現(xiàn)麻煩,如果不想獲取換行和空格,那么我們可以使用stripped_strings屬性。該屬性和strings屬性一樣,返回的也是迭代器,不能直接打印,需要使用for…in…循環(huán)來遍歷。
9.contents屬性:該屬性返回的是某個節(jié)點下的全部子元素,包括子元素的標簽名和文本內(nèi)容。返回的數(shù)據(jù)類型是列表。
10.children屬性:該屬性和contents屬性的用法是一樣的,但是返回的數(shù)據(jù)類型是迭代器。
Beautiful Soup4中四中常見的對象
1.Tag對象:Beautiful Soup中所有的標簽都是Tag類型,并且通過bs = BeautifulSoup(html_str, 'lxml')方法常見的bs對象在本質(zhì)上也是Tag類型。我們我們前面說到的find_all()、find()等方法,也都是Tag對象的方法。
2.BeautifulSoup對象:通過bs = BeautifulSoup(html_str, ‘lxml’)方法常見的bs是BeautifulSoup對象,BeautifulSoup繼承自Tag對象。所以我們之前說bs在本質(zhì)上是Tag類型,而且BeautifulSoup對象的find_all()、find()也是繼承自Tag對象的。
3.NavigableString對象:該對象繼承自Python中的str對象,用起來和str一樣,沒什么說的。
4.Comment對象:這個對象繼承自NavigableString對象,也沒什么說的。
總結(jié):
·推薦使用lxml,必要時使用lxml.parser;
·節(jié)點選擇篩選功能弱,但速度塊;
·建議使用find();find_all()查詢單個或者多個結(jié)果;
·css選擇器也是個不錯的選擇。
關(guān)于怎么安裝和使用Python第三方模塊beautifulsoup問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。
網(wǎng)頁題目:怎么安裝和使用Python第三方模塊beautifulsoup
網(wǎng)頁地址:http://aaarwkj.com/article10/pegodo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機、網(wǎng)站設(shè)計公司、搜索引擎優(yōu)化、微信公眾號、定制網(wǎng)站、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)