python xml minidom获取包含子节点和文本的childnode的完整内容
我正在寻找使用xml minidom提取xml文件的内容,以下是示例:python xml minidom获取包含子节点和文本的childnode的完整内容,python,xml,python-3.x,xml-parsing,minidom,Python,Xml,Python 3.x,Xml Parsing,Minidom,我正在寻找使用xml minidom提取xml文件的内容,以下是示例: <parent> <child> text1 <subchild>text2 </subchild> text3 </child> </parent> 我可以得到text1和text2,但不能得到text3 请说明如何获取我的子元素和子元素(text1 text2text3)的完整内容?如
<parent>
<child>
text1
<subchild>text2 </subchild>
text3
</child>
</parent>
我可以得到text1和text2,但不能得到text3请说明如何获取我的子元素和子元素(text1 text2text3)的完整内容?如果是
Text
对象和firstChild.nodeValue
对象,则迭代子节点并获取.data
属性,否则:
print([node.data.strip() if isinstance(node, xml.dom.minidom.Text) else node.firstChild.nodeValue
for node in child.childNodes])
打印['text1',text2',text3']
<>我会考虑切换到更直接、更易于使用和理解的东西,而不是<代码> MIDIDOM/COD>库。例如,看看在一个
>>来自bs4导入组
>>>data=”“”
...
...
…文本1
…文本2
…文本3
...
...
... """
>>>soup=BeautifulSoup(数据,“xml”)
>>>打印(soup.child.get_text())
文本1
文本2
文本3
print([node.data.strip() if isinstance(node, xml.dom.minidom.Text) else node.firstChild.nodeValue
for node in child.childNodes])
>>> from bs4 import BeautifulSoup
>>> data = """
... <parent>
... <child>
... text1
... <subchild>text2 </subchild>
... text3
... </child>
... </parent>
... """
>>> soup = BeautifulSoup(data, "xml")
>>> print(soup.child.get_text())
text1
text2
text3