私のコードは次のようになります
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