from xml.etree import ElementTree

class CommentedTreeBuilder ( ElementTree.XMLTreeBuilder ):

    def __init__ ( self, html = 0, target = None ):

        ElementTree.XMLTreeBuilder.__init__( self, html, target )

        self._parser.CommentHandler = self.handle_comment

   

    def handle_comment ( self, data ):

        self._target.start( ElementTree.Comment, {} )

        self._target.data( data )

        self._target.end( ElementTree.Comment )

 

#示例:

xml = ElementTree.parse( r'c:\test.xml', parser = CommentedTreeBuilder() )

ElementTree.dump( xml )

#如果不加这个Handler,则读取和保存时注释会自动去掉(stripped out)

 

相关文章:

  • 2022-01-08
  • 2022-12-23
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-10-02
  • 2021-07-15
  • 2021-04-26
  • 2021-12-19
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案