python 创建并解析XML
来源:互联网 发布:数据精灵干嘛的 编辑:程序博客网 时间:2024/05/24 06:17
建议使用python库中的xml.etree.ElementTree,参考自用 ElementTree 在 Python 中解析 XML
(1 )创建XML文件
# coding=utf-8try: import xml.etree.cElementTree as ETexcept ImportError: import xml.etree.ElementTree as ETimport xml.dom.minidomoutput_dir = './data/' # 输出路径root = ET.Element('OCR') # 创建根节点imname = ET.SubElement(root, 'imname') # 创建root的子节点imnameimname.text = 'cat.jpg' # 子节点imname的文本内容resolution = ET.SubElement(root, 'resolution') # 创建root的又一个子节点imnameresolution.set('x','100') resolution.set('y','100') # 子节点resolution的属性bbox = ET.SubElement(resolution, 'bbox') # 创建resolution的子节点bboxbbox.text = str([100,50,25,40,66,75,48,90])# 有缩进的输出XML文件xml = xml.dom.minidom.parseString(ET.tostring(root,'utf-8'))pretty_xml_as_string = xml.toprettyxml()#print pretty_xml_as_string # 控制台输出with open(output_dir + 'lanyue.xml', 'w') as f: f.write(pretty_xml_as_string.encode('utf-8'))
生成的lanyue.xml内容如下:
<?xml version="1.0" ?><OCR> <imname>cat.jpg</imname> <resolution x="100" y="100"> <bbox>[100, 50, 25, 40, 66, 75, 48, 90]</bbox> </resolution></OCR>
(2 )解析XML文件
解析上面的lanyue.xml文件。(由于每个XML文件的内容都不一样,所以主要看下面的提取方式,存储方式按个人喜好任意。)
# coding=utf-8try: import xml.etree.cElementTree as ETexcept ImportError: import xml.etree.ElementTree as ETtree = ET.parse('lanyue.xml')root = tree.getroot()# 解析出来的内容存储在了一个字典annos里(字典的结构自己随便定义)annos = dict()annos['imname'] = root.find('imname').text # 提取出root的节点imname的文本内容resolution = root.find('resolution') # 找到root的节点resolutionimage_dict = {}image_dict['width'] = float(resolution.attrib ['x'].strip("‘"))# 提取出节点resolution的属性值ximage_dict['height'] = float(resolution.attrib ['y'].strip("‘")) annos['resolution'] = image_dictannos['bbox'] = resolution.find('bbox').text # 提取出resolution的节点bbox的文本内容print annos
输出的字典annos格式如下:
{'resolution': {'width': 100.0, 'height': 100.0}, 'imname': 'cat.jpg', 'bbox': '[100, 50, 25, 40, 66, 75, 48, 90]'}
阅读全文
0 0
- python 创建并解析XML
- python解析xml(创建xml)
- python创建和解析XML
- 创建并解析XML文件Java实例
- 使用pugixml创建并解析XML
- python创建和解析xml文件
- Python XML的解析与创建
- Python XML的解析与创建
- 创建Xml文件,并解析该Xml数据,并插入数据库
- python解析xml并按照其结构输出
- 生成xml并解析
- DOM4J 解析xml,创建xml
- Dom4j创建XML,解析XML
- [XML]Dom创建,解析xml
- 创建和解析XML
- xml解析与创建
- xml解析与创建
- 解析 创建 xml
- 直播技术调研
- leetcode 数组array之566. Reshape the Matrix
- 自定义view系列(5)--99.99%实现QQ侧滑删除效果
- java,class,dex转换过程
- python中字符串常用方法
- python 创建并解析XML
- Spark性能优化:JVM参数调优
- html的各种宽度 高度
- Unity Shader学习笔记:折射
- QTP 破解方法
- mysql随机查询出一条 符合条件的数据
- WIN7下JDK1.8的安装
- C# 学习——静态(第四天)
- Anonymous Inner Class(匿名内部类)是否可以继承其它类?是否可以实现接口?【Java面试题】