天天看點

python爬蟲之BeautifulSoup入門

先看一段BeautifulSoup的官方介紹:

Beautiful Soup 是一個可以從HTML或XML檔案中提取資料的Python庫.它能夠通過你喜歡的轉換器實作慣用的文檔導航,查找,修改文檔的方式.Beautiful Soup會幫你節省數小時甚至數天的工作時間。

使用BeautifulSoup解析這段代碼,能夠得到一個 BeautifulSoup 的對象,

from bs4 import BeautifulSoup
soup = BeautifulSoup(html, 'lxml')
           

這個soup就是BeautifulSoup對象。

四種解析器

Python标準庫 : 

BeautifulSoup(markup, "html.parser")
           

lxmlHTML解析器 :

BeautifulSoup(markup, "lxml")
           

lxmlXML解析器 :  

BeautifulSoup(markup, ["lxml-xml"])/BeautifulSoup(markup, "xml")
           

html5lib : 

BeautifulSoup(markup, "html5lib")
           

推薦使用lxml作為解析器,因為效率更高. 

對象的種類

Beautiful Soup将複雜HTML文檔轉換成一個複雜的樹形結構,每個節點都是Python對象,

所有對象可以歸納為4種: Tag , NavigableString , BeautifulSoup , Comment .