【发布时间】:2012-01-18 05:00:14
【问题描述】:
我正在尝试使用 XML 和 HTTP POST 的 zip 将大型 CSV 文件上传到 GAE
步骤:
CSV 被压缩和 base64 编码并通过 XML/HTTP POST 发送到 GAE
GAE - 使用 minidom 解析 XML
GAE - Base64 解码 ZIP
GAE - 从 Zip 文件中获取 CSV。
我尝试过使用 zipfile,但不知道如何从 base 64decoded 字符串创建 zipfile 对象
我得到:TypeError: unbound method read() must be called with ZipFile instance as first argument (得到 str 实例)
myZipFile = base64.decodestring(base64ZipFile)
objZip = zipfile.ZipFile(myZipFile,'r')
strCSV = zipfile.ZipFile.read(objZip,'list.csv')
【问题讨论】:
-
根本没有理由对文件进行base64编码。
-
@NickJohnson:我认为 base64 编码就在那里,因为 Bezerk 将它封装在 XML 中,但这也可能被跳过(除非 XML 中的内容不仅仅是压缩的 CSV 文件)。
-
好吧,这让它更没有意义了。 :)
-
我这样做是出于习惯使用 XML/http 帖子。这些年来,我一直遇到外部文件的问题。
标签: python google-app-engine csv zipfile