如何从 AWS S3 嵌套目录读取泡菜文件?

马索尔莫斯

我在 AWS S3 Bucket 内的嵌套目录中有一个 pickle 文件,但我无法将它与boto3库一起加载以与 AWS Lambda 一起使用。

我试图按照这个问题的答案,但没有人工作。到目前为止,这是我的代码:

s3 = boto3.resource('s3')
source_bucket = "source_bucket_name"
key = "folder1/pickle_file.p"
response = s3.Bucket(source_bucket).Object(key).get()
body_string = response['Body'].read()
try:
    loaded_pickle = pickle.loads(body_string)
except Exception as e:
    print(e)

编辑

将此函数加载到 AWS 时,我收到以下错误消息:

embedded null byte
马尔钦

除了我在评论中所说的之外,您的代码似乎很好。也许你上传到 S3 是不正确的。下面是完整的工作示例:

import pickle
import boto3

mylist = [1,2,3]

# create pickle file

with open('/tmp/pickle_file.p', 'wb') as f:
  pickle.dump(mylist, f)

# upload to s3

source_bucket='source_bucket_name'
key = "folder1/pickle_file.p"

with open('/tmp/pickle_file.p', 'rb') as f:

  response = boto3.client('s3').put_object(
      Body=f,
      Bucket=source_bucket,
      Key=key)

  print(response)

# read back from s3

s3 = boto3.resource('s3')
response = s3.Bucket(source_bucket).Object(key).get()

body_string = response['Body'].read()

try:
    loaded_pickle = pickle.loads(body_string)
except Exception as e:
    print(e)

# should print out `mylist`
print(loaded_pickle)  

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用带有特定AWS配置文件的dask从s3中读取实木复合地板文件

如何使用AWS S3 SDK复制多个文件

如何使用AWS AppSync将文件上传到AWS S3

如何使用Spring Cloud AWS从S3删除文件?

如何使用Python在myBucket中上传CSV文件并在S3 AWS中读取文件

Python AWS Boto3:如何从S3存储桶读取文件?

如何使用aws-sdk在AWS S3上获取文件的URL?

如何从存储桶根目录重定向到AWS S3中的子目录?

如何使用AWS s3或AWS s3api递归更改权限到文件夹

AWS Lambda @ edge。如何从S3读取HTML文件并将内容放入响应正文

如何从Aws s3流音频文件(mp3)?

如何在Spark数据框中从AWS S3读取多个文件?

Python:如何从AWS S3读取和加载Excel文件?

如何从Web上的Python Flask中的AWS s3中读取文件

AWS CLI S3同步:如何排除多个文件

如何在Java中使用Spark从AWS S3读取.xls文件?而且无法读取sheetName

从AWS S3读取多个文件

如何从AWS Lambda的s3存储桶中读取csv文件?

AWS S3:删除最后一个文件后如何维护空目录结构

如何判断Spark使用什么AWS凭证读取S3文件?

AWS Lambda:如何在S3存储桶中读取CSV文件,然后将其上传到另一个S3存储桶?

如何为 S3 中上传的文件启用 AWS-S3 安全策略

如何从 Sagemaker 读取 AWS S3 图像进行处理

Pulumi(TypeScript,AWS):如何将多个文件上传到 S3,包括。静态网站托管目录中的嵌套文件

如何使用 Lambda 和 Python 在 AWS s3 中读取和覆盖文件?

如何 SAM 使用项目目录中的初始文件部署 AWS::S3::Bucket

AWS S3:如何在 COPY 命令中在 S3 目录中插入动态文件名

如何使用 mdfreader 从 AWS S3 读取 .dat 文件

如何在 AWS S3 上锁定文件?