首先,感谢您对我的帖子的关注和帮助。
我一直注意到lxml.objetify的一个小问题。我正在将XLM作为字符串。 XLM的结构如下图所示:
<?xml version="1.0" ?>
<ItemResponse>
<Items>
<Item>
<id>1</id>
<properties>Item 1 properties cames here</properties>
</Item>
<Item>
<id>2</id>
<properties>Item 2 properties cames here</properties>
</Item>
<Item>
<id>3</id>
<properties>Item 3 properties cames here</properties>
</Item>
</Items>
</ItemResponse>
好吧,假设xml作为字符串存储在'r'变量中,当我使用以下函数时:
obj = lxml.objetify.fromstring(r)
obj对象的名称类似于:
obj
|--Items
|--Item
|--id = 1
|--properties = 'Item 1 properties cames here'
可以看出,我错过了其他两项。您知道如何将所有xml作为对象吗?
非常感谢您,感谢我的英语错误
答案 0 :(得分:1)
我刚刚找到了答案,为了帮助遇到同样问题的人,我将在此处发布答案。
要访问Item标记的每个子代,您可以像列表一样进行访问。我刚刚找到的最简单的方法是以下
for item in obj.Items:
# Do something with item object/element
print('Id: ' + str(item.id) + ' Properties: ' + item.properties)