Python minidom读取xml/csv文件数据简单操作
2020-09-21 本文已影响0人
嘤嘤嘤999
目录
1.3导入 from xml.dom import minidom来读取文件
2.1可能会报异常,因为文件中有中文编码也不是utf-8python 报报错"UnicodeDecodeError: 'utf-8' codec can't decode byte"的解决办法
2.1.2双击打开修改过后缀的txt文件,点击文件------另保存为
一、xml数据的读取
from xml.dom import minidomclass Readxml():
def read_xml(self,filename,onename,twoname):
root =minidom.parse(filename)
firstnode =root.getElementsByTagName(onename)[0] secondnode=firstnode.getElementsByTagName(twoname)[0].firstChild.data
return secondnode 获取xml文件中的数据
1.1简单Demo
1.2创建demo.xml文件
<?xml version="1.0" encoding="utf-8" ?>
<note>
<AAA>
<BBB>66</BBB>
<BBB>77</BBB>
<BBB>88</BBB>
</AAA>
<AAA>
<BBB>99</BBB>
<BBB>88</BBB>
<BBB>66</BBB>
</AAA>
</note>
image
1.3导入 from xml.dom import minidom来读取文件
from xml.dom import minidom class ReadXmlClass:
def read(self): # 打开文件
root = minidom.parse("../XmlDemo/Demo")
firstnode = root.getElementsByTagName("AAA")[1]
secondnode = firstnode.getElementsByTagName("BBB")[2].firstChild.data
print(secondnode)
a = ReadXmlClass()
a.read()
image
1.4运行结果:
AAA[1]下的 BBB[2]的值:66
[图片上传中...(image-14107a-1600300240823-5)]
二、csv文件数据读取
import csv # 导入csv模块
class ReadCsvClass():
def read_csv(self):
item = [] # 定义一个空列表
c = csv.reader(open("../test1.csv", "r",encoding='utf-8')) # 得到csv文件对象
for csv_i in c:
item.append(csv_i) # 将获取的数据添加到列表中
return item
r = ReadCsvClass()
print(r.read_csv())
运行结果:
image