如何解析文件中的第二个 xml 树

发布于 2024-12-29 22:01:35 字数 348 浏览 0 评论 0原文

假设我有一个像 How do I parse 这样的 XML 文件

<?xml version="1.0" encoding="utf-8"?>
<items>
  <?xml version="1.0" encoding="utf-8"?>
  <items>
    <item>
      <price>1500</price>
      <info> asfgfdff</info>
    </item>
  </items>

,以便解析器选择最近更新的 xml 树?

Suppose I have a XML file like

<?xml version="1.0" encoding="utf-8"?>
<items>
  <?xml version="1.0" encoding="utf-8"?>
  <items>
    <item>
      <price>1500</price>
      <info> asfgfdff</info>
    </item>
  </items>

How do I parse so that the parser selects the recently updated xml tree?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

花落人断肠 2025-01-05 22:01:35
with open('file','r') as f:
    newestXml = []
    for line in f.readlines():
        if re.search('^<\?xml',line):
            newestXml = [line]
        else:
            newestXml.append(line)

在循环结束时,newestXml 将包含从最后一次出现 到文件末尾的所有行。
现在您可以组合这些行并使用 xml 解析器来解析 xml。

注意-我现在无法检查此代码,因此它可能包含小错误,但我希望这个想法对您有所帮助。

with open('file','r') as f:
    newestXml = []
    for line in f.readlines():
        if re.search('^<\?xml',line):
            newestXml = [line]
        else:
            newestXml.append(line)

At the end of the loop, newestXml will contain all the lines from the last occurrence of <?xml to the end of the file.
Now you can combine the lines and use the xml parser to parse the xml.

Note - I can't check this code now, so it may contain small mistakes, but I hope the idea will help you.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文