Python lxml庫的簡單介紹及基本使用講解
1.lxml庫介紹
lxml是XML和HTML的解析器,其主要功能是解析和提取XML和HTML中的數(shù)據(jù);lxml和正則一樣,也是用C語言實現(xiàn)的,是一款高性能的python HTML、XML解析器,也可以利用XPath語法,來定位特定的元素及節(jié)點信息
HTML是超文本標記語言,主要用于顯示數(shù)據(jù),他的焦點是數(shù)據(jù)的外觀
XML是可擴展標記語言,主要用于傳輸和存儲數(shù)據(jù),他的焦點是數(shù)據(jù)的內(nèi)容
2.安裝lxml方法
方法1:
在cmd運行窗口中輸入:pip install lxml
方法2:
在Pycharm中下載
File–Setting–Project–Project Interpreter–點擊右上角的“+”—
第1步
第2步
第3步
方法3:
進入這個網(wǎng)站進行下載:https://lxml.de/index.html
3.基本使用
我們可以利用他解析HTML代碼,并且在解析HTML代碼的時候,如果HTML代碼不規(guī)范或者不完整,lxml解析器會自動修復或補全代碼,從而提高效率
實例1:
解析HTML代碼塊
#提取html中的數(shù)據(jù) from lxml import etree text = ''' <html> <div class="clearfix"> <div class="nav_com"> <ul> <li class="active"><a href="/" rel="external nofollow" >推薦</a></li> <li class=""><a href="/nav/python" rel="external nofollow" >Python</a></li> <li class=""><a href="/nav/java" rel="external nofollow" >Java</a></li> <li class=""><a href="/nav/web" rel="external nofollow" >前端</a></li> <li class=""><a href="/nav/arch" rel="external nofollow" >架構(gòu)</a></li> <li class=""><a href="/nav/db" rel="external nofollow" >數(shù)據(jù)庫</a></li> <li class=""><a href="/nav/5g" rel="external nofollow" >5G</a></li> <li class=""><a href="/nav/game" rel="external nofollow" >游戲開發(fā)</a></li> <li class=""><a href="/nav/mobile" rel="external nofollow" >移動開發(fā)</a></li> <li class=""><a href="/nav/ops" rel="external nofollow" >運維</a></li> </ul> </div> </div> </html>> </html>> ''' #將字符串解析為html文檔 html = etree.HTML(text) #print(html) #將字符串序列化為html result = etree.tostring(html).decode('utf-8') print(result)
實例2:
讀取并解析html文件
#將html文件進行解析 from lxml import etree #將html文件進行讀取 html = etree.parse('data.html') #將html內(nèi)容序列化 result = etree.tostring(html).decode('utf-8') print(result)
到此這篇關(guān)于Python lxml庫的簡單介紹及基本使用講解的文章就介紹到這了,更多相關(guān)Python lxml庫使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python使用wxpython開發(fā)簡單記事本的方法
這篇文章主要介紹了python使用wxpython開發(fā)簡單記事本的方法,涉及Python使用wxPython實現(xiàn)桌面圖形應用程序的技巧,需要的朋友可以參考下2015-05-05pandas如何統(tǒng)計某一列或某一行的缺失值數(shù)目
這篇文章主要介紹了pandas如何統(tǒng)計某一列或某一行的缺失值數(shù)目,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05Python+OpenCV實現(xiàn)實時眼動追蹤的示例代碼
這篇文章主要介紹了Python+OpenCV實現(xiàn)實時眼動追蹤的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-11-11