lxml对xml进行转换

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from xml.etree import ElementTree
 
from lxml import etree
 
xml = etree.Element('Document'# 创建跟元素
DocId = 222
# Document位parent节点 创建Status子节点
node_Status = etree.SubElement(xml, 'Status')
# 设置value
node_Status.text = str(1)
 
node_Remark = etree.SubElement(xml, 'Remark')
node_Remark.text = 'xxxxxxxxxxxx'
 
node_DocId = etree.SubElement(xml, 'DocId')
node_DocId.text = str(DocId)
# 设置字节点
test = etree.SubElement(node_DocId, 'test')
test.text = str('hahaaha')
 
xml_text = etree.tostring(xml).decode()
# <Document><Status>1</Status><Remark>xxxxxxxxxxxx</Remark><DocId>222<test>hahaaha</test></DocId></Document>
print(xml_text)
 
# 把xml转换位对象 , 获取节点内容
root = ElementTree.fromstring(xml_text)
print(root.find('Status').text)  # 获取内容
print(root.find('xxx').text)  # 不存在会报错      root.find('xxx') 返回None

  

posted @   qukaige  阅读(460)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示