【问题标题】:How to get text from XML via Python?如何通过 Python 从 XML 中获取文本?
【发布时间】:2020-12-30 14:50:19
【问题描述】:

我正在训练语言模型。我的输入是 XML 格式的字幕。我需要从中获取纯文本并保存到文本文件中,以便我可以使用它。

输入

<?xml version="1.0" encoding="utf-8"?> <document> <s id="1"> <time id="T1S" value="00:00:14,660" /> <w id="1.1">-</w> <w id="1.2">Všetko</w> <w id="1.3">v</w> <w id="1.4">poriadku</w> <w id="1.5">.</w> </s></document>

输出

- Všetko v poriadku . 

【问题讨论】:

  • 你能举一些例子来说明你拥有的数据以及你想从中提取什么吗?
  • 你确实需要详细描述你想做什么。 xml 无论如何都是基于文本的格式,所以你想要做什么是模棱两可的。
  • @juanpa.arrivillaga 等。 al:他说他正在训练一个语言模型,因此他对没有标记的文本感兴趣。他可以使用 lxml 和 XPath 轻松获取任何元素的字符串值,甚至是文档根目录,正如我展示的 below

标签: python xml data-processing txt language-model


【解决方案1】:

在 XML 术语中,您需要感兴趣的 XML 元素的 string-value

下面是如何使用 XPath 在 Python 中获取根元素的字符串值:

import lxml.etree as ET


xmlstr = """
  <r status="ready">
    <line>First line.</line>
    <line>Second line, with <i>italic text</i>.</line>
  </r>
"""

root = ET.fromstring(xmlstr)
svalue = root.xpath('string(/)')
print(svalue)

上面的代码只打印文本,

    First line.
    Second line, with italic text.

根据要求

【讨论】:

    猜你喜欢
    • 2013-07-10
    • 2014-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多