2

这是我的脚本:

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>

我希望它保持相同的结构。我怎样才能做到这一点?

4

1 回答 1

7

来自Beautiful Soup 文档

最常见的缺点BeautifulStoneSoup是它不知道自闭合标签。HTML 有一组固定的自闭合标签,但对于 XML,它取决于 DTD 所说的内容。您可以通过将它们的名称作为参数传递给构造函数来判断BeautifulStoneSoup某些标签是自关闭的selfClosingTags

于 2009-10-14T16:22:13.967 回答