Bucket / Action / download_fileobj


S3.Bucket.download_fileobj(Key, Fileobj, ExtraArgs=None, Callback=None, Config=None)#

Download an object from this bucket to a file-like-object.

The file-like object must be in binary mode.

This is a managed transfer which will perform a multipart download in multiple threads if necessary.


import boto3
s3 = boto3.resource('s3')
bucket = s3.Bucket('mybucket')

with open('filename', 'wb') as data:
    bucket.download_fileobj('mykey', data)
  • Fileobj (a file-like object) – A file-like object to download into. At a minimum, it must implement the write method and must accept bytes.

  • Key (str) – The name of the key to download from.

  • ExtraArgs (dict) – Extra arguments that may be passed to the client operation. For allowed download arguments see boto3.s3.transfer.S3Transfer.ALLOWED_DOWNLOAD_ARGS.

  • Callback (function) – A method which takes a number of bytes transferred to be periodically called during the download.

  • Config (boto3.s3.transfer.TransferConfig) – The transfer configuration to be used when performing the download.