Python利用BeautifulSoup解析Html的方法示例
介紹
Beautiful Soup提供一些簡單的、python式的函數(shù)用來處理導(dǎo)航、搜索、修改分析樹等功能。它是一個工具箱,通過解析文檔為用戶提供需要抓取的數(shù)據(jù),因為簡單,所以不需要多少代碼就可以寫出一個完整的應(yīng)用程序。
Beautiful Soup自動將輸入文檔轉(zhuǎn)換為Unicode編碼,輸出文檔轉(zhuǎn)換為utf-8編碼。你不需要考慮編碼方式,除非文檔沒有指定一個編碼方式,這時,Beautiful Soup就不能自動識別編碼方式了。然后,你僅僅需要說明一下原始編碼方式就可以了。
Beautiful Soup已成為和lxml、html6lib一樣出色的python解釋器,為用戶靈活地提供不同的解析策略或強勁的速度。
本文將給大家詳細介紹關(guān)于Python利用BeautifulSoup解析Html的方法,下面話不多說了,來一起看看詳細的介紹:
1. 安裝Beautifulsoup4
pip install beautifulsoup4 pip install lxml pip install html5lib
lxml 和 html5lib 是解析器
2. html
<!-- This is the example.html file. --> <html><head><title>The Website Title</title></head> <body> <p>Download my <strong>Python</strong> book from <a rel="external nofollow" >my website</a>.</p> <p class="slogan">Learn Python the easy way!</p> <p>By <span id="author">Al Sweigart</span></p> </body></html>
上面的html保存html文件
3.開始解析
import bs4
exampleFile = open('example.html')
exampleSoup = bs4.BeautifulSoup(exampleFile.read(),'html5lib')
elems = exampleSoup.select('#author')
type(elems)
print (elems[0].getText())
結(jié)果輸出 Al Sweigart
BeautifulSoup 使用select 方法尋找元素,類似jquery的css選擇器
soup.select(‘div')———————–所有為<div>的元素soup.select(‘#author')—————–id為author的元素soup.select(‘.notice')——————class 為notice的元素
參考《Python 編程快速上手—–讓繁瑣工作自動化》
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持
相關(guān)文章
python-docx把dataframe表格添加到word文件中
用Python-docx庫,可以輕松地添加表格到Word文檔中,本文主要介紹了python-docx把dataframe表格添加到word文件中,感興趣的可以了解一下2023-08-08
python基礎(chǔ)知識(一)變量與簡單數(shù)據(jù)類型詳解
這篇文章主要介紹了python變量與簡單數(shù)據(jù)類型詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04
Python調(diào)用各大機器翻譯API的實現(xiàn)示例
本文主要介紹了Python調(diào)用各大機器翻譯API的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07

