目錄
一.find方法的使用
二.finall的使用
三.擷取标簽頁中的文本
四.擷取标簽當中的屬性值
五.擷取多層層标簽層級下的具體内容
beautifulsoup4是Python資料包中專門用于資料解析的資料包,它能夠比對網頁原碼中的标簽頁,進而從網頁中獲得我們想要的資料,本章節我們來講述bs4的一些簡單的使用。
一.find方法的使用
#首先我們打開一個text.html文檔,打開的模式為隻讀模式,其編碼為utf-8
fp=open('./text.html','r',encoding='utf-8')
#使用我們的BeautifulSoup函數将我們的文本進行處理。
soup=BeautifulSoup(fp,'lxml')
#找到第一次出現的a标簽的位置
print(soup.find('a'))
使用我們下面的代碼與上面的功能時等價的
print(soup.a)
當然,在find方法使用的時候,還可以指定我們的class參數,注意,在我們的class_後面一定要加上“_”,否則就會報錯
print(soup.find('div',class_="special-column-bar"))
二.finall的使用
使用find_all方法,能夠找出我們所有滿足條件的标簽頁,并且将所有符合條件的結果組合成一個清單并傳回。
print(soup.find_all('div',class_="span"))
三.擷取标簽頁中的文本
擷取标簽之間的文本資料,可以使用下面的方法
soup.a.text/string/get_text()
其中soup.string隻能擷取該标簽下直系文本下的内容。
print(soup.script.string)
四.擷取标簽當中的屬性值
下面的代碼中我們能擷取到整張網頁中的body标簽頁中img标簽的src屬性值
print(soup.body.img['src'])
五.擷取多層層标簽層級下的具體内容
我們先用select函數尋找span标簽,然後再在我們的span标簽下比對p标簽
print(soup.select('.span >p'))
接下來我們進行一下對比
print(soup.select('.span'))