Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19745822
  • 博文数量: 679
  • 博客积分: 10495
  • 博客等级: 上将
  • 技术积分: 9308
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-18 10:51
文章分类

全部博文(679)

文章存档

2012年(5)

2011年(38)

2010年(86)

2009年(145)

2008年(170)

2007年(165)

2006年(89)

分类: Python/Ruby

2010-02-09 14:04:16

from StringIO import StringIO
try:
    import xml.etree.cElementTree as ET
except ImportError:
    try:
        import cElementTree as ET
    except ImportError:
        try:
            import xml.etree.ElementTree as ET
        except ImportError:
            import elementtree.ElementTree as ET

from abstractdomwrapper import AbstractDomWrapper


class DomWrapper(AbstractDomWrapper):
    
    """A wrapper for Python's XML DOM for simplifying reading data from it.
   
    See documentation of AbstractDomWrapper for further usage information.
    """

    def __init__(self, path=None, string=None, node=None):
        """Initialize by giving 'path' to an xml file or xml as a 'string'.
       
        Alternative initialization by giving dom 'node' ment to be used only
        internally. 'path' may actually also be an already opened file object
        (or anything accepted by ElementTree.parse).
        """
        AbstractDomWrapper.__init__(self, path)
        # This should NOT be changed to 'if node:'. See chapter Truth Testing
        # from
        if node is None:
            node = ET.parse(path or StringIO(string)).getroot()
        self.name = node.tag
        self.attrs = dict(node.items())
        self.text = node.text or ''
        for child in list(node):
            self.children.append(DomWrapper(path, node=child))
 
文件路径:C:\Python26\lib\site-packages\robot\etreedomwrapper.py
功能:定义了DomWrapper的基类,XML DOM 定义了访问和处理 XML 文档的标准方法。这里仅仅是etree的读,暂不深入 。暂不深入
阅读(24504) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~