python:如何解析压缩的xml文件?

时间:2012-07-26 19:19:51

标签: python

我的代码看起来像

def read_zip_file():
    import zipfile
    zf = zipfile.ZipFile(os.path.expanduser('~/Downloads/tmp/me.zip'))
    for filename in [ 'myfile.xml' ]:
        print filename
        try :
            data = get_proposal_data_map(zf.read(filename))
            print data
        except:
            logging.error('error - ' + str(sys.exc_info()))

这会将xml作为常规文件吐出。现在我有一个现有的代码,它给出了一个路径将XML解析为

try:
    tree = etree.parse(path)
    root = tree.getroot()
    for child in root:
              # do things with XML

问题

我如何parse zipped XML (myfile.xml.zip)作为常规XML文件?

1 个答案:

答案 0 :(得分:2)

您可以将zip文件读入变量,然后使用

root = etree.fromstring(xmlstr)