首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用python从文本文件中仅获取xml数据

使用python从文本文件中仅获取xml数据
EN

Stack Overflow用户
提问于 2020-10-20 17:43:30
回答 1查看 40关注 0票数 0

我有一个文本文件,其中有一些XML数据和一些HTML数据。两者都以"<“开头。现在,我只想提取XML数据并将其保存到另一个文件中。我该怎么做呢?

文件示例:

代码语言:javascript
运行
复制
xyz data:
<note>
<to>john</to>
<from>doe</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

xyz data
<bold>xyz</bold>

text 
text 
text

<bold>xyz</bold>

again XML data

注意:此文件为.txt格式。

EN

Stack Overflow用户

回答已采纳

发布于 2020-10-20 20:37:04

我不会将您的整个输入视为XML,而是将其视为HTML片段。HTML可以包含非标准元素,所以<note>等就可以了。

为了方便起见,我建议使用pyquery (link)来处理HTML.它的工作方式与jQuery几乎相同,所以如果您以前使用过它,那么应该对它很熟悉。

它非常简单明了。加载您的数据,将其包装在"<html></html>"中,解析它,查询它。

代码语言:javascript
运行
复制
from pyquery import PyQuery as pq

data = """xyz data:
<note>
<to>john</to>
<from>doe</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

xyz data
<bold>xyz</bold>

text 
text 
text

<bold>xyz</bold>

again XML data"""

doc = pq(f"<html><body>{data}</body></html>")
note = doc.find("note")

print(note.find("body").text())

它打印"Don't forget me this weekend!"

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64442542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档