Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带进度条的S3 Python下载_Python_Amazon Web Services_Amazon S3_Boto3_Boto - Fatal编程技术网

带进度条的S3 Python下载

带进度条的S3 Python下载,python,amazon-web-services,amazon-s3,boto3,boto,Python,Amazon Web Services,Amazon S3,Boto3,Boto,无法评论我修改此代码()的初始线程,希望有人能在这里帮助我。我能够使用这段代码来显示文件上传的进度条,现在我需要对AWS S3的文件下载做同样的事情。任何帮助都将不胜感激 我知道我需要从S3而不是从本地文件系统获取文件的大小。我确信有一些愚蠢的代码我需要调整,使这项工作。希望有人能给我们一些启示。:) 这能工作吗:?你已经下载了,需要上传吗?反之亦然?我已经让它用于上传,现在只需要弄清楚如何进行下载:) def upload_to_aws(local_file, bucket, s3_file)

无法评论我修改此代码()的初始线程,希望有人能在这里帮助我。我能够使用这段代码来显示文件上传的进度条,现在我需要对AWS S3的文件下载做同样的事情。任何帮助都将不胜感激

我知道我需要从S3而不是从本地文件系统获取文件的大小。我确信有一些愚蠢的代码我需要调整,使这项工作。希望有人能给我们一些启示。:)


这能工作吗:?你已经下载了,需要上传吗?反之亦然?我已经让它用于上传,现在只需要弄清楚如何进行下载:)
def upload_to_aws(local_file, bucket, s3_file):
    s3 = boto3.client('s3', aws_access_key_id=s3ak,
                      aws_secret_access_key=s3sk)

    statinfo = os.stat(local_file)
    up_progress = progressbar.progressbar.ProgressBar(maxval=statinfo.st_size)
    up_progress.start()
    def upload_progress(chunk):
        up_progress.update(up_progress.currval + chunk)

    try:
        s3.upload_file(local_file, bucket, s3_file, Callback=upload_progress)
        up_progress.finish()
        print("Upload Successful")
        return True
    except FileNotFoundError:
        print("The file was not found")
        return False
    except NoCredentialsError:
        print("Credentials not available")
        return False