【问题标题】:Get all nodes of particular name in lxml?在lxml中获取特定名称的所有节点?
【发布时间】:2012-05-22 11:28:47
【问题描述】:

我发现 lxml 的初始学习曲线有点陡峭 - 只是常见的任务,例如按名称、属性抓取节点并获取它们的内容。这是一个非常简单的问题。

我有一个 XML 文件。我想找到所有名为<Review> 的XML 节点。如何使用 lxml 最有效地做到这一点?

f = open('./test.xml')
xml = f.read()
tree = etree.parse(StringIO(xml))
context = etree.iterparse(StringIO(xml))
# How to get all the tags with the name <Review>
reviews = tree.findall('Review') # Something like this?

我不知道我是否应该使用objectify,xpath...

也欢迎对我在文件中读取并将其转换为可解析的 lxml 对象的方式发表评论。谢谢。

【问题讨论】:

    标签: python xml lxml


    【解决方案1】:

    documentation

    tree = etree.parse(open('./test.xml'))
    reviews = tree.findall(".//Review")
    

    【讨论】:

    • 谢谢。在所有不同的 lxml 选项中有点迷失。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    • 2013-06-13
    • 2016-01-29
    • 1970-01-01
    相关资源
    最近更新 更多