av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

利用 Python ElementTree 生成 xml的實(shí)例

瀏覽:92日期:2022-08-03 15:21:49

Python 處理 xml 文檔的方法有很多,除了經(jīng)典的 sax 和 dom 之外,還有一個(gè) ElementTree。

首先 import 之:

from xml.etree import ElementTree as etree

然后開(kāi)始構(gòu)建 xml 樹(shù):

from xml.etree.ElementTree import Element, SubElement, ElementTree # 生成根節(jié)點(diǎn)root = Element(’root’)# 生成第一個(gè)子節(jié)點(diǎn) headhead = SubElement(root, ’head’)# head 節(jié)點(diǎn)的子節(jié)點(diǎn)title = SubElement(head, ’title’)title.text = ’Well Dola!’# 生成 root 的第二個(gè)子節(jié)點(diǎn) bodybody = SubElement(root, ’body’)# body 的內(nèi)容body.text = ’I love Dola!’tree = ElementTree(root)

這樣就得到了一個(gè) xml 樹(shù)的對(duì)象 tree 以及它的根節(jié)點(diǎn)的對(duì)象 root

接著我們把它們變成 xml 串,有兩個(gè)辦法,一個(gè)是用 tree 對(duì)象的 write 方法將 xml 內(nèi)容寫(xiě)成一個(gè)文件,還有一個(gè)是用 etree 的 tostring 方法轉(zhuǎn)成 xml 字符串:

# 第一種tree.write(’result.xml’, encoding=’utf-8’)# 第二種xml_string = etree.tostring(root)# xml_string 就是 xml 字符串了

但是第二種有一個(gè)問(wèn)題,就是它沒(méi)有

<?xml version='1.0'?>

這個(gè)頭部定義內(nèi)容:

’<root><head><title>Well Dola!</title></head><body>I love Dola!</body></root>’

怎么辦呢?

有一個(gè)辦法是使用 minidom 來(lái)實(shí)現(xiàn),方法如下:

from xml.dom import minidom# 使用 minidom 解析tree = minidom.parseString(xml_string)# 重新生成 xml 字符串xml_string = tree.toxml()

雖然讓計(jì)算機(jī)多運(yùn)行了一些代碼,但是這樣可以把問(wèn)題解決掉。

最后生成的 xml 代碼如下:

u’<?xml version='1.0' ?><root><head><title>Well Dola!</title></head><body>I love Dola!</body></root>’

當(dāng)然還可以使用 minidom 中 tree 對(duì)象的 toprettyxml 方法把 xml 打得漂亮一點(diǎn)。

補(bǔ)充知識(shí):Python ElementTree 導(dǎo)出 xml 缺少 開(kāi)頭聲明

使用ElementTree修改完xml后,寫(xiě)入文件時(shí),發(fā)現(xiàn)開(kāi)頭缺少了 <?xml version=’1.0’ encoding=’utf-8’?>

解決辦法:

在調(diào)用ElementTree的write方法寫(xiě)入xml時(shí),參數(shù)里增加 encoding=‘utf-8’ 以及 xml_declaration=True

et_root.write(’file。xml’, encoding=’utf-8’, xml_declaration=True)

以上這篇利用 Python ElementTree 生成 xml的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 久久久久久久一区二区三区 | 亚洲精品大片 | 日本午夜视频 | 久久一区二区三区电影 | 精品久久久久一区二区国产 | 亚洲欧美日韩电影 | 成年人在线观看 | 国产精品久久久久久吹潮 | 久久精品视频亚洲 | 亚洲免费观看 | wwww.8888久久爱站网 | 成人精品一区二区三区 | 日韩免费网 | 国产精品一区二区三区在线播放 | 欧美一区2区三区3区公司 | 国产电影一区二区 | 亚洲免费在线 | 91最新入口 | 日韩在线观看网站 | h视频免费在线观看 | www国产亚洲精品久久网站 | 久久中文字幕av | 国产传媒视频在线观看 | 91免费高清 | 国产激情视频网 | 国产二区精品视频 | 亚洲精品一区二区三区中文字幕 | 日韩在线欧美 | 欧美一区在线看 | 久久精品国产一区二区电影 | 亚洲最色视频 | av资源中文在线 | 成人av一区二区三区 | 亚洲人人舔人人 | 男女下面一进一出网站 | 丝袜久久 | 91新视频 | 亚洲精品av在线 | 国产精品伦一区二区三级视频 | 国产精品福利网站 | 日本电影网站 |