在 Lambda Python 运行时中找不到 Gzip

问题描述 投票:0回答:1

我正在使用 Lambda Python 运行时 v3.12,似乎

Gzip
二进制文件已从此 Lambda 运行时中删除。这条线破坏了我的代码,但它按预期工作,直到 Lambda Python 运行时 v3.7:

subprocess.call(['gzip', '-d', '/tmp/' + object_name + '.gz'])

我在运行时 3.12 上收到此错误:

[Errno 2]没有这样的文件或目录:'gzip'

请告诉我是否有办法在 Lambda Python 运行时 v3.12 中找到这个

gzip
二进制文件并在我的代码中使用它?

我在较旧的运行时尝试过,它在 v3.7 上工作

python amazon-web-services aws-lambda gzip
1个回答
0
投票

我尝试使用带有以下代码片段的 Python gzip 包,但遇到了错误。

我尝试过的代码片段:

with gzip.open('/tmp/' + object_name + '.gz', 'rb') as f:
      file_content = f.read()
gzip_decompressed_byte_output=gzip.decompress(file_content)
open('/tmp/' + object_name, "wb").write(gzip_decompressed_byte_output) 
print("Directory contents after Docoding Gzip: ", os.listdir("/tmp/"))

错误:

gzip_decompressed_byte_output=gzip.decompress(file_content) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 文件“/var/lang/lib/python3.12/gzip.py”, 第 627 行,在解压缩中,如果 _read_gzip_header(fp) 为 None: ^^^^^^^^^^^^^^^^^^^^^^^ 文件“/var/lang/lib/python3.12/gzip.py”,行 456,在 _read_gzip_header 中 raise BadGzipFile('不是 gzip 压缩文件 (%r)' % magic) gzip.BadGzipFile: 不是 gzip 压缩文件 (b'

如果我搞砸了,请指导?

© www.soinside.com 2019 - 2024. All rights reserved.