如何通过 Python 从 XML 获取文本?
How to get text from XML via Python?
我正在训练语言模型。我输入的是 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 术语中,您需要感兴趣的 XML 元素的 字符串值 。
以下是如何使用 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.
根据要求
我正在训练语言模型。我输入的是 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 术语中,您需要感兴趣的 XML 元素的 字符串值 。
以下是如何使用 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.
根据要求