这是我的脚本:
import BeautifulSoup
if __name__ == "__main__":
data = """
<root>
<obj id="3"/>
<obj id="5"/>
<obj id="3"/>
</root>
"""
soup = BeautifulSoup.BeautifulStoneSoup(data)
print soup
运行时,会打印:
<root>
<obj id="3"></obj>
<obj id="5"></obj>
<obj id="3"></obj>
</root>
我希望它保持相同的结构。我怎么能这样做?
答案 0 :(得分:7)
来自Beautiful Soup documentation:
BeautifulStoneSoup
最常见的缺点是它不了解自动关闭标签。 HTML有一组固定的自关闭标签,但是使用XML它取决于DTD所说的内容。你可以告诉BeautifulStoneSoup
某些标签是自动关闭的,方法是将它们的名称作为selfClosingTags
参数传递给构造函数