gpt4 book ai didi

python - 使用 Python 从剪贴板解析 XML

转载 作者:行者123 更新时间:2023-12-01 03:23:48 25 4
gpt4 key购买 nike

我正在尝试将 ElementTree 与来自 Microsoft 的示例数据一起使用。我刚刚将其复制并粘贴到一个字符串中(也许很天真)。

我已经在字符串中输入了所有 XML 数据,如下所示(这是一个截断的示例,但我已经使用了所有 XML):

  data2 = '''
<?xml version="1.0"?>
<catalog>
<book id="bk101">
<author>Gambardella, Matthew</author>
etc
etc'''

然后使用这段代码:

import xml.etree.ElementTree as ET    
tree2 = ET.fromstring(data2)
print (tree2.find('author').text)

我得到这个输出:

ParseError: XML or text declaration not at start of entity: line 2, column 0

但是,当我尝试一个简单的示例时,它起作用了:

data = '''
<p>
<name>Fred</name>
</p>'''

tree = ET.fromstring(data)
print (tree.find('name').text)

输出:

Fred

这是因为我进行了复制和粘贴还是我的代码不正确?我在这里做错了什么?

最佳答案

1 - 第一行必须像“<?xml version="1.0"?> ”,所以首先你要剥离(data2)

import xml.etree.ElementTree as ET  

data2 = '''
<?xml version="1.0"?>
<catalog>
<book id="bk101">
<author>Gambardella, Matthew</author>
</book>
<book id="bk2">
<author>Gambardella2, Matthew2</author>
</book>
</catalog>
'''
data2 = data2.strip()

tree2 = ET.fromstring(data2)

for book in tree2.findall('book'):
autor = book.find('author').text
print (autor)

关于python - 使用 Python 从剪贴板解析 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41635139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com