【python】DOM模块读写XML文件

简介: 【python】DOM模块读写XML文件



DOM模块

DOM模块是指文档对象模型,它是一种用于表示和操作HTML和XML文档API。通过DOM模块,我们可以使用JavaScript来动态地修改网页的内容和结构,实现交互效果和动态更新

特点

一次性读写整个文档,然后放到一个树形结构中,之后可以利用DOM提供的不同函数来读取需改文档。

也可以把修改过的内容写入XML中。

XML读写过程

两种解析器

# coding=gbk
import xml.dom.minidom
import xml.dom.pulldom
#一种解析器
xml.dom.minidom.parse()
xml.dom.pulldom.parse()

DOM解析XML文件

# coding=gbk
import xml.dom.minidom
document_tree=xml.dom.minidom.parse("storehouse.xml")
collection=document_tree.documentElement# 把所有元素存入集合
print(collection.toxml())
<storehouse>
    <goods category="fish">
        <title>淡水鱼</title>
        <name>鲫鱼</name>
        <amount>18</amount>
        <price>8</price>
    </goods>
    <goods category="fruit">
        <title>温带水果</title>
        <name>猕猴桃</name>
        <amount>10</amount>
        <price>10</price>
    </goods>
</storehouse>
Process finished with exit code 0

用DOM实现XML修改

# coding=gbk
import xml.dom.minidom
document_tree=xml.dom.minidom.parse("storehouse.xml")
collection=document_tree.documentElement# 把所有元素存入集合
#print(collection.toxml())
price = collection.getElementsByTagName("price")# 获取此标签下的子元素集合
price_object=price[0]
price_object.firstChild.data=8.2
print("xiugaichenggong!")
goods=collection.getElementsByTagName("goods")
collection.removeChild(goods[1])# 删除第二个goods节点对象
print("jiedianchacchu")
f=open("storehouse.xml","w",encoding="utf-8")
f.write(document_tree.toxml())
f.close()

总结

XML有很好的结构化数据格式。可以清晰记录数据和数据的结构

并可以随时发送给相关方,进行读写修改。

总而言之,XML 指的是 eXtensible Markup Language,意思是可扩展标记语言。它是一种用于存储和传输数据的格式,在许多方面都与 HTML 相似,但是它不限制你如何使用标记,而是允许你自定义标记以更好地表示你的数据。因此,XML 在各种领域,如网络传输、数据存储和内容管理等,都有着广泛的应用。

相关文章
|
XML JavaScript Java
【JAVA XML 探秘】DOM、SAX、StAX:揭秘 Java 中 XML 解析技术的终极指南!
【8月更文挑战第25天】本文详细探讨了Java中三种主流的XML解析技术:DOM、SAX与StAX。DOM将XML文档转换为树状结构,便于全方位访问和修改;SAX采取事件驱动模式,适用于大型文件的顺序处理;StAX则兼具DOM和SAX的优点,支持流式处理和随机访问。文中提供了每种技术的示例代码,帮助读者理解如何在实际项目中应用这些解析方法。
689 1
|
数据挖掘 Python
🚀告别繁琐!Python I/O管理实战,文件读写效率飙升的秘密
在日常编程中,高效的文件I/O管理对提升程序性能至关重要。Python通过内置的`open`函数及丰富的库简化了文件读写操作。本文从基本的文件读写入手,介绍了使用`with`语句自动管理文件、批量读写以减少I/O次数、调整缓冲区大小、选择合适编码格式以及利用第三方库(如pandas和numpy)等技巧,帮助你显著提升文件处理效率,让编程工作更加高效便捷。
290 0
|
12月前
|
存储 数据采集 数据处理
如何在Python中高效地读写大型文件?
大家好,我是V哥。上一篇介绍了Python文件读写操作,今天聊聊如何高效处理大型文件。主要方法包括:逐行读取、分块读取、内存映射(mmap)、pandas分块处理CSV、numpy处理二进制文件、itertools迭代处理及linecache逐行读取。这些方法能有效节省内存,提升效率。关注威哥爱编程,学习更多Python技巧。
340 8
|
存储 JSON 对象存储
如何使用 Python 进行文件读写操作?
大家好,我是V哥。本文介绍Python中文件读写操作的方法,包括文件读取、写入、追加、二进制模式、JSON、CSV和Pandas模块的使用,以及对象序列化与反序列化。通过这些方法,你可以根据不同的文件类型和需求,灵活选择合适的方式进行操作。希望对正在学习Python的小伙伴们有所帮助。欢迎关注威哥爱编程,全栈路上我们并肩前行。
299 4
|
Python
python读写操作excel日志
主要是读写操作,创建表格
185 2
|
SQL JSON 关系型数据库
n种方式教你用python读写excel等数据文件
n种方式教你用python读写excel等数据文件
242 1
|
索引 Python
Excel学习笔记(一):python读写excel,并完成计算平均成绩、成绩等级划分、每个同学分数大于70的次数、找最优成绩
这篇文章是关于如何使用Python读取Excel文件中的学生成绩数据,并进行计算平均成绩、成绩等级划分、统计分数大于70的次数以及找出最优成绩等操作的教程。
472 0
|
Python
Python:读写操作
【8月更文挑战第20天】
149 0
|
XML 数据格式
Dom4j 保存XML HL7-V3
Dom4j 保存XML HL7-V3
120 0
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
600 159

热门文章

最新文章

推荐镜像

更多