我正在尝试使用boto3从AWS S3读取h5文件。
client = boto3.client('s3',key ='key')
result = client.get_object(Bucket='bucket', Key='file')
with h5py.File(result['Body'], 'r') as f:
data = f
TypeError:预期的str,字节或os.PathLike对象,而不是StreamingBody
任何想法?
h5py版本为2.10,boto3版本为1.7.58
同一问题是here,但没有答案...
h5py.File()
命令需要一个磁盘上本地文件的路径。但是,您正在将内存中的数据传递给它。
您可以下载文件具有:
import boto3
s3_client = boto3.client('s3')
s3_client.download_file('bucket', 'key', 'filename')
with h5py.File('filename', 'r') as f:
data = f