一 什麼是BeautifulSoup
簡單來說,Beautiful Soup是python的一個庫,最主要的功能是從網頁抓取數據。
官方解釋如下:
Beautiful Soup提供一些簡單的、python式的函數用來處理導航、搜索、修改分析樹等功能。它是一個工具箱,通過解析文檔為用戶提供需要抓取的數據,因為簡單,所以不需要多少代碼就可以寫出一個完整的應用程序。
Beautiful Soup 是一個可以從HTML或XML文件中提取數據的Python庫。它能夠通過你喜歡的轉換器實現慣用的文檔導航,查找,修改文檔的方式。所以需要配合解析器一起使用!
Beautiful Soup會幫你節省數小時甚至數天的工作時間.你可能在尋找 Beautiful Soup3 的文檔,Beautiful Soup 3 目前已經停止開發,官網推薦在現在的項目中使用Beautiful Soup 4。
解析器:
Beautiful Soup支持Python標準庫中的HTML解析器,還支持一些第三方的解析器,如果我們不安裝它,則 Python 會使用 Python默認的解析器,lxml 解析器更加強大,速度更快,推薦安裝另一個可供選擇的解析器是純Python實現的 html5lib , html5lib的解析方式與瀏覽器相同。
解析器對比: 官方文檔
二 為什麼要用BeautifulSoup?
BeautifulSoup能給我們提供一些列查找文檔樹的方法,使我們能快速定位到我們想要爬取的數據。我們再回想一下之前學的一個re模塊,它可以全局查找我們想要的文本,從文本開頭到結束開始匹配,然後通過貪婪匹配,再通過非貪婪匹配拿到需要的數據,整個過程是不是非常繁瑣,而卻搜索效率極低!
BeautifulSoup內既封裝了re,還為我們提供了一些更加強大、高效的功能,使我們可以快速匹配到我們想要的數據,提高爬取效率和開發效率。
三 安裝
1、安裝
四 怎麼使用
1、基本使用
2、遍歷文檔樹
3、搜索文檔樹
BeautifulSoup定義了很多搜索方法,這裡著重介紹2個:find() 和 find_all() 。其它方法的參數和用法類似!
閱讀更多 新猿IT人 的文章