我正在尝试从 s3 存储桶中读取 .txt 文件内容并返回其所有行。我设法这样做:
s3 = boto3.resource('s3')
res = s3_client.Object(bucket_name, key_name)
data = res.get()['Body'].read().decode('utf-8').splitlines()
for i in data:
print(i)
它打印内容,但只打印最后 30 行,我希望它返回所有内容。
此 Lambda 函数的 CloudWatch Logs 应该是打印日志的最终视图。
您的代码看起来是正确的 - StreamingBody上的 read 函数返回所有数据(如果您没有指定数量参数),所以我认为您的代码没有问题。它正在接收整个文件内容。
看起来您在 Lambda 控制台中看到的截断视图可能只是控制台的一个限制,以避免显示大量的输出行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句