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

如何使用Python的xml.etree.ElementTree模塊解析和操作 XML 數(shù)據(jù)

 更新時(shí)間:2025年01月09日 10:59:35   作者:喜歡硬編碼  
xml.etree.ElementTree是Python標(biāo)準(zhǔn)庫中用于解析和操作XML數(shù)據(jù)的模塊,無需安裝,支持解析、創(chuàng)建、修改和查詢XML數(shù)據(jù),本文介紹如何使用Python的xml.etree.ElementTree模塊解析和操作 XML 數(shù)據(jù),感興趣的朋友跟隨小編一起看看吧

Date: 2025.01.04 17:30:45 author: lijianzhan

簡述:xml.etree.ElementTree 是 Python 標(biāo)準(zhǔn)庫的一部分,而且是 Python 標(biāo)準(zhǔn)庫中用于解析和操作 XML 數(shù)據(jù)的模塊,因此不需要通過 pip install 安裝。只要你安裝了 Python(無論是 Python 2.x 還是 Python 3.x),就可以直接使用xml.etree.ElementTree 。它提供了一種簡單而高效的方式來處理 XML 文件,支持解析、創(chuàng)建、修改和查詢 XML 數(shù)據(jù)。

引入xml.etree.ElementTree模塊

import xml.etree.ElementTree as ET
print(ET.__version__)  # 打印版本信息

xml.etree.ElementTree 的詳細(xì)介紹,ElementTree 基本概念: Element:表示 XML 中的一個(gè)節(jié)點(diǎn),包含標(biāo)簽(tag),屬性(attrib)和子節(jié)點(diǎn)(children),ElementTree:表示整個(gè) XML 文檔的樹結(jié)構(gòu)。
知道基本概念后,可以使用內(nèi)部方法解析XML。代碼示例如下:

#解析 XML

1.從文件解析

import xml.etree.ElementTree as ET
# 解析 XML 文件
tree = ET.parse('data.xml')
root = tree.getroot()  # 獲取根元素

2.從字符串解析

xml_data = '''
<root>
    <child id="1">Text1</child>
    <child id="2">Text2</child>
</root>
'''
root = ET.fromstring(xml_data)  # 從字符串解析

3獲取XML格式數(shù)據(jù)并遍歷節(jié)點(diǎn)代碼如下:

xml_content = res.text # 獲取響應(yīng)數(shù)據(jù)
root = ET.fromstring(xml_content)# 解析 XML
# 遍歷所有的 game 元素
for game in root.findall('game'):

4.完整的從請求http接口,獲取XML數(shù)據(jù)并解析得到數(shù)據(jù)的腳步實(shí)例,代碼如下:

import time
import requests
from time import sleep
import xml.etree.ElementTree as ET
class GetM061Com:
    def getLogin(self, username, password):
        print("登錄模塊")
        url = 'http://www.baidu.com?mode=login'
        headers = {
            'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1'
        }
        data = {
            'mode': 'login',
            'username': username,
            'password': password,
        }
        res = requests.post(url, headers=headers, data=data)
        if res.status_code == 200:
            xml_content = res.text # 獲取響應(yīng)數(shù)據(jù)
            root = ET.fromstring(xml_content) # 解析XML數(shù)據(jù)
            return root.find('uid').text
    def getIndex(self, uid):
        print("首頁模塊")
        if not uid:
            print("未獲取到有效的 uid")
            return
        # 獲取當(dāng)前的秒級時(shí)間戳
        current_time_s = time.time()
        # 將秒級時(shí)間戳轉(zhuǎn)換為毫秒級時(shí)間戳
        current_time_ms = int(current_time_s * 1000)
        sleep(3)
        url = 'http://www.baidu.com?mode=index'
        headers = {
            'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1'
        }
        data = {
            'uid': uid,
            'mode': 'home',
            'ts': current_time_ms
        }
        res = requests.post(url, headers=headers, data=data)
        if res.status_code == 200:
            xml_content = res.text # 獲取響應(yīng)數(shù)據(jù)
            root = ET.fromstring(xml_content)# 解析 XML
            # 遍歷所有的 game 元素
            for game in root.findall('game'):
                game_id = game.get('id')
                gtype = game.find('gtype').text
                if gtype == 'football':
                    print("-足球")
                    print("game_id:" + game_id)
                elif gtype == 'basketball':
                    print("-籃球")
                    print("game_id:" + game_id)
if __name__ == '__main__':
    username = ''# 賬號
    password = ''# 密碼
    uid = GetM061Com().getLogin(username, password)
    GetM061Com().getIndex(uid)

5.總結(jié)

xml.etree.ElementTree 是處理 XML 數(shù)據(jù)的強(qiáng)大工具,適合解析、修改和生成 XML 文件。它的接口簡單易用,能夠滿足大多數(shù) XML 處理需求。如果你有更復(fù)雜的需求(如命名空間處理),可以考慮使用 lxml 庫,它提供了更強(qiáng)大的功能和更好的性能。

到此這篇關(guān)于使用Python的xml.etree.ElementTree模塊解析和操作 XML 數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Python xml.etree.ElementTree解析xml內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺析python中5個(gè)帶key的內(nèi)置函數(shù)

    淺析python中5個(gè)帶key的內(nèi)置函數(shù)

    這篇文章主要介紹了python中5個(gè)帶key的內(nèi)置函數(shù),包括max取最大值函數(shù),min取最小值函數(shù),filter過濾函數(shù),本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • 基于python求兩個(gè)列表的并集.交集.差集

    基于python求兩個(gè)列表的并集.交集.差集

    這篇文章主要介紹了基于python求兩個(gè)列表的并集.交集.差集,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Python?Transformers庫(NLP處理庫)案例代碼講解

    Python?Transformers庫(NLP處理庫)案例代碼講解

    本文介紹transformers 庫的全面講解,包含基礎(chǔ)知識、高級用法、案例代碼及學(xué)習(xí)路徑,內(nèi)容經(jīng)過組織,適合不同階段的學(xué)習(xí)者,對Python?Transformers庫相關(guān)知識感興趣的朋友一起看看吧
    2025-04-04
  • Python類反射機(jī)制使用實(shí)例解析

    Python類反射機(jī)制使用實(shí)例解析

    這篇文章主要介紹了Python類反射機(jī)制使用實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 超詳細(xì),教你用python語言實(shí)現(xiàn)QQ機(jī)器人制作教程

    超詳細(xì),教你用python語言實(shí)現(xiàn)QQ機(jī)器人制作教程

    這篇文章主要介紹了如何python語言實(shí)現(xiàn)QQ機(jī)器人,用圖文詳細(xì)的描述了其中的操作步驟,非常的簡單易上手,有需要的朋友可以參考下
    2021-08-08
  • Python合并pdf文件的工具

    Python合并pdf文件的工具

    PDF文件合并工具是非常好用可以把多個(gè)pdf文件合并成一個(gè),本文以5個(gè)pdf文件為例給大家分享具體操作方法,通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2021-07-07
  • 通過實(shí)例解析Python調(diào)用json模塊

    通過實(shí)例解析Python調(diào)用json模塊

    這篇文章主要介紹了通過實(shí)例解析Python調(diào)用json模塊,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • OpenCV中VideoCapture類的使用詳解

    OpenCV中VideoCapture類的使用詳解

    這篇文章主要介紹了OpenCV中VideoCapture類的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫sqlite3)

    DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫sqlite3)

    今天小編就為大家分享一篇DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫sqlite3),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python打包成.exe可執(zhí)行文件的詳細(xì)步驟

    Python打包成.exe可執(zhí)行文件的詳細(xì)步驟

    在Python中,可以使用一些工具將Python代碼打包成可執(zhí)行文件(.exe)以便在沒有安裝Python解釋器的環(huán)境中運(yùn)行,本文通過圖文結(jié)合的方式給大家詳細(xì)介紹了Python打包成.exe可執(zhí)行文件的步驟,需要的朋友可以參考下
    2024-04-04

最新評論

衡水市| 淳化县| 水富县| 襄垣县| 大新县| 盐亭县| 安达市| 二连浩特市| 林口县| 特克斯县| 龙泉市| 潮州市| 谷城县| 轮台县| 清流县| 台北县| 和林格尔县| 志丹县| 来安县| 田东县| 仲巴县| 惠水县| 清水县| 叙永县| 昔阳县| 兴国县| 梁山县| 新巴尔虎左旗| 白朗县| 临汾市| 武汉市| 遵义市| 中阳县| 旌德县| 会同县| 伊吾县| 丹江口市| 上虞市| 巴塘县| 郎溪县| 乌什县|