函数计算,oss解压zip文件报错这个问题你们之前遇到过吗?[ERROR] {
"errorMessage": "compression type 9 (deflate64)",
"errorType": "NotImplementedError",
"stackTrace": [
[
"File \"/code/index.py\"",
"line 46",
"in wrapper",
"ret = func(args, *kwargs)"
],
[
"File \"/code/index.py\"",
"line 135",
"in handler",
"with zip_file.open(name) as file_obj:"
],
[
"File \"/code/ossZipfile.py\"",
"line 1469",
"in open",
"return ZipExtFile(zef_file, mode, zinfo, zd, True)"
],
[
"File \"/code/ossZipfile.py\"",
"line 794",
"in init",
"self._decompressor = _get_decompressor(self._compress_type)"
],
[
"File \"/code/ossZipfile.py\"",
"line 713",
"in _get_decompressor",
"\"compression type %d (%s)\" % (compress_type, descr))"
]
]
}
zip文件损坏或不完整。
您使用的OSS服务版本不支持解压缩zip文件。
您上传的zip文件中包含不受支持的文件类型或文件结构。
这个错误是因为oss解压缩zip文件时使用了不支持的压缩类型。具体来说,该错误是由于压缩类型为9(deflate64),而oss不支持deflate64压缩类型导致的。解决这个问题的方法是使用oss支持的压缩类型进行压缩。
您好,根据您提供的信息,您在使用oss解压zip文件时遇到了错误。这可能是由于多种原因引起的,例如压缩格式不支持、缺少依赖库等。以下是一些可能有用的解决方法:
检查压缩格式是否支持。如果您使用的是较旧的版本的oss,可能会出现不支持某些压缩格式的情况。请尝试升级到最新版本的oss并再次尝试解压文件。
检查依赖库是否已安装。如果您使用的是较旧的版本的oss,可能会缺少某些依赖库。请确保已安装所有必需的依赖库,并重新运行代码。
检查代码是否正确。请确保您的代码正确地指定了要解压的文件路径和压缩格式,并且没有其他语法错误或逻辑错误。
是 zip 的压缩格式有点特殊吧:https://stackoverflow.com/questions/12809651/opening-zipfile-of-unsupported-compression-type-silently-returns-empty-filestrea
此答案来自钉钉群“阿里函数计算官网客户"
根据提供的错误信息,函数计算在解压ZIP文件时遇到了"compression type 9 (deflate64)"的错误,并且报出了"NotImplementedError"。
这个错误表明正在尝试使用不被支持的ZIP压缩类型(deflate64)进行解压缩操作。导致这个错误的原因可能是函数计算环境中的ZIP解压库或相关软件版本不支持该压缩类型。因此,需要找到一种适合函数计算环境的解决方案。
有几种解决方法可以尝试:
检查ZIP文件:首先确保ZIP文件没有损坏或者没有其他特殊的压缩方式。你可以在本地进行解压缩以确认文件是否正常。如果ZIP文件确实包含了不支持的压缩类型,你可以尝试使用其他工具重新生成ZIP文件,确保使用了比较常见的压缩方式(如deflate)。
更新依赖库:检查并更新函数计算环境所依赖的ZIP解压库或相关软件版本。确保使用的库支持deflate64压缩类型。如果是自定义的运行时环境,你可以尝试更新相关依赖库的版本。
使用其他解压方式:考虑使用其他可用的解压方式来替代ZIP解压缩。例如,可以使用Python内置的zipfile模块进行解压缩操作,这样可以避免依赖其他第三方库的支持。
根据您提供的错误信息,报错信息中显示了"compression type 9 (deflate64)",并且抛出了"NotImplementedError"异常。这可能意味着您正在尝试解压缩一个使用了deflate64压缩算法的ZIP文件,而该功能在当前环境中不被支持。
可能的解决方法之一是尝试使用其他压缩算法或格式的ZIP文件,例如使用较普遍的deflate算法进行压缩。您还可以尝试更新您使用的函数计算和OSS解压缩的相关工具或库,以确保它们支持deflate64压缩算法。
此外,您还可以尝试使用其他方法来处理ZIP文件,例如将ZIP文件下载到本地进行解压缩,或者使用其他云服务提供商的解压缩服务。
如果以上方法都无法解决问题,我建议您向阿里云的技术支持寻求帮助。他们将能够提供专业的支持和指导,以解决您的具体问题。
这个错误是由于阿里云函数计算中的ossZipfile库不支持压缩类型为deflate64的zip文件导致的。建议使用其他类型的zip文件或者使用其他库进行解压操作。
这个错误是由于压缩文件使用了deflate64压缩类型而导致的。根据错误信息所示,函数计算的OSS解压缩zip文件功能尚未实现对deflate64压缩类型的支持,因此会抛出NotImplementedError异常。
要解决这个问题,有以下几种方法:
1、尝试使用其他压缩软件或压缩算法创建压缩文件,避免使用deflate64压缩类型。例如,使用7zip等软件创建zip文件时,可以选择其他的压缩算法,如Deflate或BZip2。
2、如果你无法更改压缩文件的压缩类型,可以尝试使用其他方式进行解压缩。例如,你可以尝试使用Python的zipfile库或其他第三方库来解压缩文件,这些库可能具有对deflate64压缩类型的支持。
3、如果你使用的是函数计算的OSS服务,可以查看其文档或联系其支持团队,了解是否有关于deflate64压缩类型的支持计划或其他解决方案。
这个错误提示显示函数计算在解压缩ZIP文件时遇到了一个不支持的压缩类型,具体是compression type 9 (deflate64)
。
根据错误信息所示,函数计算使用的代码库没有实现对deflate64
压缩类型的支持,导致解压缩失败。这可能是由于函数计算环境中使用的Python版本或相关库的限制所致。
针对此问题,有以下一些解决方案:
使用其他压缩格式:将ZIP文件重新打包为其他压缩格式(例如普通的DEFLATE压缩),然后尝试解压缩。可以使用本地开发环境或其他工具来处理压缩文件,确保使用的压缩方式和函数计算环境兼容。
更新依赖库:如果您的函数代码中使用了第三方库来处理ZIP文件,尝试更新该库的版本,以查看是否有修复或增加对deflate64
压缩类型的支持。请参考库的文档和更新日志进行操作。
联系阿里云技术支持:如果上述解决方案无法解决问题,建议您联系阿里云函数计算的技术支持团队。提供详细的错误信息、代码和环境配置,他们将能够更好地帮助您解决问题。
根据提供的错误信息,可能是由于 OSS 解压缩 ZIP 文件时,遇到了不支持的压缩类型导致的。
具体来说,错误信息中的 "compression type 9 (deflate64)" 提示 ZIP 文件中使用了 Deflate64 压缩算法,而 OSS SDK 可能不支持解压该算法。因此,您可以尝试以下方法解决问题:
检查 ZIP 文件的压缩算法:可以使用其他 ZIP 解压工具(如 7-Zip、WinRAR 等)查看 ZIP 文件的详细信息,确认该文件是否使用了 Deflate64 压缩算法。如果是,您可以尝试重新生成 ZIP 文件,使用其他压缩算法(如 Deflate)。
尝试使用其他 OSS SDK:如果无法更改 ZIP 文件的压缩算法,可以尝试使用其他 OSS SDK(如 Python SDK、Java SDK 等)解压缩 ZIP 文件,以确定是不是 OSS SDK 的问题。
根据您提供的错误信息,函数计算在解压ZIP文件时遇到了"compression type 9 (deflate64)"的问题,并抛出了"NotImplementedError"异常。这个问题可能是由于函数计算的ZIP库不支持解压缩类型为deflate64的文件导致的。
建议您尝试以下解决方法:
检查ZIP文件类型:确认您要解压的ZIP文件是否使用了deflate64的压缩方式。如果是的话,尝试使用其他支持的压缩方式(如deflate或store)重新压缩ZIP文件。
更新函数计算环境:阿里云函数计算的运行环境会定期更新,以支持新的功能和修复问题。尝试将函数计算的运行环境版本升级到最新版本,看是否已经支持deflate64压缩方式。
调整代码逻辑:如果您有访问源代码的权限,可以尝试调整代码逻辑以兼容deflate64压缩方式。可能需要使用其他的ZIP库或工具来处理此类文件。
联系阿里云技术支持:如果上述方法都无法解决问题,建议您联系阿里云技术支持团队,向他们详细描述您的问题,并提供相关的错误日志和代码,以便他们能够更好地帮助您解决该问题。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。