python中的有效zip文件

python中的有效zip文件,python,zip,Python,Zip,我上传了zip文件夹使用文件输入,但当我检查这个zip是否有效;结果是:不是有效的pkzip文件,我不知道有效pkzip的规范是什么。 我使用此代码检查: form = cgi.FieldStorage() file_upload = form['file[]'] if zipfile.is_zipfile(file_upload.filename): print "%s is a valid pkzip file" % file_upload.filename else: p

我上传了zip文件夹使用文件输入,但当我检查这个zip是否有效;结果是:不是有效的pkzip文件,我不知道有效pkzip的规范是什么。 我使用此代码检查:

form = cgi.FieldStorage() 
file_upload = form['file[]']
if zipfile.is_zipfile(file_upload.filename):
    print "%s is a valid pkzip file" % file_upload.filename
else:
    print "%s is not a valid pkzip file" % file_upload.filename
我不知道为什么?例如,当我上传test.zip时,o/p将是:
test.zip不是有效的pkzip文件,我需要帮助。谢谢。is_zipfile获取指向文件或类似文件的对象的路径。你也没有通过,所以它失败了


问它关于
file\u upload.file的问题。

你使用的是哪一个版本的Python?:我使用了Python 2.5,并在eclipse上工作,正如你所说的那样;file_upload.file,但错误是:强制使用Unicode:需要字符串或缓冲区,找到cStringIO.StringO。请问有什么问题?您需要读取该文件--它可能是
.getvalue()
;我记不起确切的方法了——并将数据传递给
zipfile
。或者将其写入一个
临时文件
@katrielex:如何获取上传文件的路径以便在:zipfile.is_zipfile???中使用???Thanks@Eng_Engineer不,你还没明白。上载的文件没有路径。它在记忆中。您可以a)将其写入磁盘的某个位置,从而给它一个路径(tempfile
模块将自动选择放置它的任意位置),或者b)直接传递对象。@Eng_工程师您要问的是:
是否“foo.zip”是有效的zipfile?
。显然这没有道理
foo.zip
是一个名称。名字不是拉链。