gpt4 book ai didi

python - 当某些标签自闭且不同时时,BeautifulSoup可以解析xml吗

转载 作者:行者123 更新时间:2023-12-01 06:12:45 24 4
gpt4 key购买 nike

类似下面的情况。

XML 文件:

<tag1/>  
<tag2>some_data</tag2>
<tag1>some_another_data</tag1>

tag1 有时是自动关闭的,有时内部有数据。

代码:

from BeautifulSoup import BeautifulStoneSoup
s = '<tag1/><tag2>some_data</tag2><tag1>some_another_data</tag1>'
soup1 = BeautifulStoneSoup(s)
soup2 = BeautifulStoneSoup(s, selfClosingTags=["tag1"])
print soup1.prettify()
print
print soup2.prettify()

输出:

<tag1>
<tag2>
some_data
</tag2>
</tag1>
<tag1>
some_another_data
</tag1>

<tag1 />
<tag2>
some_data
</tag2>
<tag1 />
some_another_data

在第一种情况下,tag1 会吃掉后面的标签(如果它又不是 tag1),因为默认情况下不支持自关闭标签。在第二种情况下,自关闭标签不支持子标签。

我只想获取原始 xml 文档的结构。 BeautifulSoup 可以吗?如果可能的话,如何让所有标签默认自动关闭? xml 文件很多,我不想手动搜索所有此类情况。

最佳答案

我不推荐 BeautifulSoup (甚至不推荐 HTML 解析)。使用标准库中的 ElementTree,或 lxml ,如果您需要更强大的 XML 库。

关于python - 当某些标签自闭且不同时时,BeautifulSoup可以解析xml吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4844827/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com