在使用python的minidom解析xml文件时,遇到一个问题,当使用parseString格式解析数据时,例如字符串
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<books>
<book>
<name>macken</name>
<author>tan</author>
</book>
<book>
<name>macken</name>
<author>tan</author>
</book>
</books>
会将book下的name、author节点识别为元素节点,因为无法像文本节点直接用node.data或node.nodeValue获取里面的文本值,可以使用node.firstChild.data获取内部的文本值;
代码示例:
#!/usr/bin/env python
# -*- coding: GBK -*-
import urllib2
from xml.dom import minidom
url="http://localhost:82/v1/game/"
header = {'Accept':'application/xml'}
request = urllib2.Request(url, headers=header)
response = urllib2.urlopen(request)
data = response.read()
dom=minidom.parseString(data)
for node in dom.childNodes:
for model in node.childNodes:
for x in model.childNodes:
print x.firstChild.data
分享到:
相关推荐
在Python中解析XML文件是一种常见的需求,特别是在处理配置文件、数据交换格式以及其他需要结构化数据的应用场景中。本文将详细介绍如何使用两种流行的方法——`MiniDom`和`ElementTree`来解析XML文件。 #### 1. ...
本教程将详细讲解如何使用Python解析XML文件,并进行添加、删除和查找操作。 首先,Python提供了几个库来处理XML,其中最常用的是`xml.etree.ElementTree`。这个模块提供了树形结构来表示XML文档,使得处理XML变得...
首先,我们来了解如何使用ElementTree解析XML。ElementTree库包含两个主要部分:`xml.etree.ElementTree` 和 `xml.etree.cElementTree`。前者是纯Python实现,后者是优化过的C版本,速度更快。基本的使用流程如下: ...
要解析XML文档并获取其中的节点值,通常需要使用Python的内置库`xml.dom.minidom`。本文将详细介绍如何使用这个库来获取XML文档中的任意节点值,并通过一个名为`SimpleXmlGetter`的类来简化这一过程。 首先,导入`...
本文将详细介绍如何使用 `xml.dom.minidom` 来解析 XML 文件、更新 XML 文件中的特定节点,并向现有文件中添加新的节点。 #### 1. 解析 XML 文件 解析 XML 文件通常涉及读取文件并从中提取有用的数据。`xml.dom....
总结起来,`xml.dom.minidom`是Python中处理XML数据的强大工具,通过其提供的API,我们可以方便地解析XML文档,获取或修改XML节点的各种信息。这个实例展示了如何读取XML文件,提取特定元素的属性和文本值,为实际...
`ElementTree`用于处理整个XML文档,而`Element`则代表XML文档中的一个节点或元素。 ### 写XML文件 在`generate_xml.py`中,我们可能会看到如何创建一个新的XML文件。以下是一个基本示例: ```python import xml....
在DOM中,XML文档被解析为一棵节点树,根节点是树的顶部。通过DOM API,可以在任意位置插入、删除或修改子节点。 6. XPath和XSLT - XPath是一种在XML文档中查找信息的语言,可以用来定位根节点并操作其子节点。 -...
在Python中使用SAX解析XML,需要导入`xml.sax`模块,并实现`ContentHandler`类的方法,如`startElement`、`endElement`、`characters`等。`startElement`和`endElement`会在遇到元素开始和结束标签时被调用,`...
3. **解析XML**: 解析后的XML对象可以像处理Python字典一样进行操作,如查找元素、获取属性、遍历子节点等。 ```python root = response.xml element_name = root['elementName'].text attribute_value = root...
本主题主要关注两个方面:使用Python解析CDD文件和批量删除CANoe工程中的CBF文件。CDD(Configuration Data Description)文件是用于描述CANoe工程配置的数据文件,而CBF(CAN Bus Format)文件则是CANoe中存储CAN...
无论使用哪种编程语言,删除XML根节点下的子节点都需要先解析XML文档,找到目标子节点,然后执行删除操作。记得在完成操作后保存修改,以便保留更改。在处理大量数据或频繁操作时,还应注意性能优化,比如使用缓存或...
3. **XML解析**:详细讲解如何使用Python解析XML文档,包括递归和迭代解析XML元素,获取元素属性和文本,以及处理命名空间。 4. **XML创建与写入**:介绍如何使用Python创建XML文档,包括添加元素、属性,以及序列...
`ElementTree`表示整个XML文档,而`Element`则表示XML文档中的一个节点或元素。 读取XML文件: 要读取XML文件,我们可以使用`ElementTree`的`parse()`函数。这个函数会返回一个`ElementTree`对象,我们可以通过该...
在Python中,我们可以使用`xml.dom.minidom`模块来解析和操作XML文件。以下是一些关键的API和方法: 1. 引入模块:`from xml.dom.minidom import parse` 2. 打开XML文档:`DOMTree = xml.dom.minidom.parse(data_...
XPath是一种在XML文档中查找信息的语言,它允许我们基于元素的名称、属性、文本内容以及它们之间的关系来定位XML节点。在Python中,我们可以使用ElementTree的`find`、`findall`和`iterfind`方法结合XPath表达式来...
- **简介**:`xmllib` 是Python中最基础的XML解析器之一,它是一个非验证性的低级解析器,主要用于简单的XML文档解析。通过继承 `xmllib.XMLParser` 类并覆盖其方法,可以实现对特定元素和实体的自定义处理逻辑。 - ...
本主题主要探讨如何使用Python解析XML文件,并将数据存入数据库。 首先,`批量建立MRS数据表.py`可能是一个脚本,用于根据XML数据结构创建MySQL数据库中的表结构。在Python中,可以使用`pymysql`或`mysql-connector...
XML节点是XML文档的基本构建块,包括元素、属性、文本、注释、处理指令等。在删除XML节点时,我们的目标是彻底移除它,不留下任何痕迹。 问题的关键在于,许多XML解析器和库在处理节点删除时,可能不会立即从DOM...