最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python操作lxml庫之基礎(chǔ)使用篇

 更新時(shí)間:2022年12月23日 11:14:13   作者:醉蕤  
lxml庫是python的第三方庫,安裝方式也是十分簡單,下面這篇文章主要給大家介紹了關(guān)于Python操作lxml庫之基礎(chǔ)使用篇的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、lxml庫概述

1、lxml庫介紹

lxml是XML和HTML的解析器,其主要功能是解析和提取XML和HTML中的數(shù)據(jù);lxml和正則一樣,也是用C語言實(shí)現(xiàn)的,是一款高性能的python HTML、XML解析器,也可以利用XPath語法,來定位特定的元素及節(jié)點(diǎn)信息。

2、lxml庫特點(diǎn)

HTML是超文本標(biāo)記語言,主要用于顯示數(shù)據(jù),他的焦點(diǎn)是數(shù)據(jù)的外觀

XML是可擴(kuò)展標(biāo)記語言,主要用于傳輸和存儲數(shù)據(jù),他的焦點(diǎn)是數(shù)據(jù)的內(nèi)容

3、lxml庫的安裝

windows系統(tǒng)下,在cmd命令提示框中,輸入如下命令

pip install lxml

在cmd命令行驗(yàn)證是否安裝成功。若引入模塊,不返回錯(cuò)誤則說明安裝成功。 

二、基本使用

1、lxml.etree

在爬蟲代碼采集過程中,通過etree.HTML直接將字符串實(shí)例轉(zhuǎn)化為element對象。

import requests
from lxml import etree
 
res = requests.get("http://www.jsons.cn/zt/")
 
html = res.text
 
root_element = etree.HTML(html)
 
print(root_element)
print(root_element.tag)

2、解析HTML網(wǎng)頁

#解析HTML字符串
from lxml import etree
text = '''
<html><body>
    <div class="key">
        <div class="name">無羨</div>
        <div class="age">20</div>
        <div class="address">四川</div>
    </div>
</body></html>
'''
# 開始初始化
html = etree.HTML(text)  # 這里需要傳入一個(gè)html形式的字符串
print(html)
print(type)
# 將字符串序列化為html字符串
result = etree.tostring(html).decode('utf-8')
print(result)
print(type(result))

3、讀取并解析HTML文件

from lxml import etree
 
# 將html文件進(jìn)行讀取
html = etree.parse('1.html')
 
# 將html內(nèi)容序列化
result = etree.tostring(html).decode('utf-8')
print(result)
print(type(result))
html = etree.HTML(result)  # 這里需要傳入一個(gè)html形式的字符串
print(html)
print(type)

三、lxml使用流程

1、 導(dǎo)入模塊

from lxml import etree

2、創(chuàng)建解析對象

調(diào)用 etree 模塊的 HTML() 方法來創(chuàng)建 HTML 解析對象。

parse_html = etree.HTML(html)

HTML() 方法能夠?qū)?HTML 標(biāo)簽字符串解析為 HTML 文件,該方法可以自動修正 HTML 文本。

from lxml import etree
html_str = '''
<div>
    <ul>
         <li class="item1"><a href="link1.html">Python</a></li>
         <li class="item2"><a href="link2.html">Java</a></li>
         <li class="site1"><a href="c.biancheng.net">C語言中文網(wǎng)</a>
         <li class="site2"><a href="www.baidu.com">百度</a></li>
         <li class="site3"><a href="www.jd.com">京東</a></li>
     </ul>
</div>
'''
html = etree.HTML(html_str)
 
result = etree.tostring(html)
print(result.decode('utf-8'))

四、lxml庫數(shù)據(jù)提取

1、提取所有a標(biāo)簽內(nèi)的文本信息

from lxml import etree
# 創(chuàng)建解析對象
parse_html=etree.HTML(html)
# 書寫xpath表達(dá)式,提取文本最終使用text()
xpath_bds='//a/text()'
# 提取文本數(shù)據(jù),以列表形式輸出
r_list=parse_html.xpath(xpath_bds)
# 打印數(shù)據(jù)列表
print(r_list)

2、獲取所有href的屬性值

from lxml import etree
# 創(chuàng)建解析對象
parse_html=etree.HTML(html)
# 書寫xpath表達(dá)式,提取文本最終使用text()
xpath_bds='//a/@href'
# 提取文本數(shù)據(jù),以列表形式輸出
r_list=parse_html.xpath(xpath_bds)
# 打印數(shù)據(jù)列表
print(r_list)

3、不匹配href=" www.biancheng.net/priduct"

from lxml import etree
# 創(chuàng)建解析對象
parse_html=etree.HTML(html)
# 書寫xpath表達(dá)式,提取文本最終使用text()
xpath_bds='//a/@href'
# 提取文本數(shù)據(jù),以列表形式輸出
xpath_bds='//ul[@id="sitename"]/li/a/@href'
# 打印數(shù)據(jù)列表
print(r_list)

總結(jié)

到此這篇關(guān)于Python操作lxml庫之基礎(chǔ)使用篇的文章就介紹到這了,更多相關(guān)Python操作lxml庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • PyTorch中的神經(jīng)網(wǎng)絡(luò) Mnist 分類任務(wù)

    PyTorch中的神經(jīng)網(wǎng)絡(luò) Mnist 分類任務(wù)

    這篇文章主要介紹了PyTorch中的神經(jīng)網(wǎng)絡(luò) Mnist 分類任務(wù),在本次的分類任務(wù)當(dāng)中,我們使用的數(shù)據(jù)集是 Mnist 數(shù)據(jù)集,這個(gè)數(shù)據(jù)集大家都比較熟悉,需要的朋友可以參考下
    2023-03-03
  • 用Python寫個(gè)新年賀卡生成器

    用Python寫個(gè)新年賀卡生成器

    大家好,本篇文章主要講的是用Python寫個(gè)新年賀卡生成器,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • python繪制散點(diǎn)圖和折線圖的方法

    python繪制散點(diǎn)圖和折線圖的方法

    這篇文章主要為大家詳細(xì)介紹了python繪制散點(diǎn)圖和折線圖的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Python遍歷某目錄下的所有文件夾與文件路徑

    Python遍歷某目錄下的所有文件夾與文件路徑

    這篇文章主要介紹了Python遍歷某目錄下的所有文件夾與文件路徑 以及輸出中文亂碼問題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 總結(jié)Pyinstaller的坑及終極解決方法(小結(jié))

    總結(jié)Pyinstaller的坑及終極解決方法(小結(jié))

    這篇文章主要介紹了總結(jié)Pyinstaller的坑及終極解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • python正則表達(dá)式re.sub各個(gè)參數(shù)的超詳細(xì)講解

    python正則表達(dá)式re.sub各個(gè)參數(shù)的超詳細(xì)講解

    Python 的 re 模塊提供了re.sub用于替換字符串中的匹配項(xiàng),下面這篇文章主要給大家介紹了關(guān)于python正則表達(dá)式re.sub各個(gè)參數(shù)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • 解決pip?install報(bào)錯(cuò):Cannot?connect?to?proxy問題

    解決pip?install報(bào)錯(cuò):Cannot?connect?to?proxy問題

    這篇文章主要介紹了解決pip?install報(bào)錯(cuò):Cannot?connect?to?proxy問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Python+Selenium實(shí)現(xiàn)瀏覽器標(biāo)簽頁的切換

    Python+Selenium實(shí)現(xiàn)瀏覽器標(biāo)簽頁的切換

    在實(shí)際工作中,我們經(jīng)常會遇到頁面切換的情況。就比如當(dāng)點(diǎn)擊了某個(gè)功能的按鈕后,瀏覽器出現(xiàn)了新的標(biāo)簽頁,需要在這些標(biāo)簽頁之間進(jìn)行切換。本文將利用Selenium實(shí)現(xiàn)這一功能,需要的可以參考一下
    2022-06-06
  • python?windows安裝cuda+cudnn+pytorch教程

    python?windows安裝cuda+cudnn+pytorch教程

    這篇文章主要介紹了python?windows安裝cuda+cudnn+pytorch教程,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Python實(shí)現(xiàn)隨機(jī)生成任意數(shù)量車牌號

    Python實(shí)現(xiàn)隨機(jī)生成任意數(shù)量車牌號

    這篇文章主要介紹了Python實(shí)現(xiàn)隨機(jī)生成任意數(shù)量車牌號,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01

最新評論

饶河县| 平顶山市| 祁门县| 芷江| 南宁市| 化隆| 河西区| 宝应县| 星子县| 崇明县| 阜宁县| 固安县| 新化县| 湖北省| 长兴县| 台湾省| 奎屯市| 格尔木市| 海伦市| 兴文县| 张家港市| 中西区| 思南县| 巴彦淖尔市| 喜德县| 左云县| 光山县| 平泉县| 颍上县| 蓬安县| 泾阳县| 元氏县| 文水县| 开化县| 浦县| 惠水县| 麻阳| 贡山| 舟山市| 德惠市| 济宁市|