簡體   English   中英

Python:直接從tar.gz包中漂亮地打印xml文件

[英]Python: Pretty printing a xml file directly from a tar.gz package

這是我嘗試創建的第一個Python腳本。 我正在從tar.gz包中讀取xml文件,然后將其打印出來。 但是我似乎無法將其從類似文件的對象轉換為字符串。 我試圖用幾種不同的方法來做到這一點,包括str(),tostring()等,但是沒有任何效果適合我。

為了進行測試,我只是嘗試在“ print myfile [0:200]”處打印字符串,並且它始終生成“ <tarfile.ExFileObject object at 0x10053df10>

import os
import sys
import tarfile
from xml.dom.minidom import parseString

tar = tarfile.open("data/ucd.all.flat.tar.gz", "r")
getfile = tar.extractfile("ucd.all.flat.xml")

myfile = str(getfile)
print myfile[0:200]

output = parseString(getfile).toprettyxml()
print output

tar.close()

未經測試,但您可能只需要對tarfile返回的類似文件的對象進行read()調用即可,例如:

myfile = getfile.read()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM