专门设计的网站,找人做微信网站,建设地方美食网站的目的,青岛网站设计选哪家文章目录 一、Boto3 快速安装二、账户配置三、代码示例3.1 下载单个文件3.2 下载文件夹内全部文件 官方文档 一、Boto3 快速安装
安装 Boto3 之前#xff0c;先安装 Python 3.8 或更高版本#xff1b;对 Python 3.6 及更早版本的支持已弃用。
通过 pip 安装最新的 Boto3 版… 文章目录 一、Boto3 快速安装二、账户配置三、代码示例3.1 下载单个文件3.2 下载文件夹内全部文件 官方文档 一、Boto3 快速安装
安装 Boto3 之前先安装 Python 3.8 或更高版本对 Python 3.6 及更早版本的支持已弃用。
通过 pip 安装最新的 Boto3 版本
pip install boto3使用 AWS Common Runtime (CRT) 除了默认安装 Boto3 之外还可以选择包含新的 CRT。AWS CRT 是模块化包的集合充当 AWS 开发工具包的新基础。每个库都为其实现的功能区域提供更好的性能和最小的占用空间。使用 CRT开发工具包可以在可能的情况下共享相同的基本代码从而提高 AWS 开发工具包之间的一致性和吞吐量优化。
但是Boto3 默认情况下不使用 AWS CRT但可以通过在安装 Boto3 时指定 crt 额外功能来选择使用它
pip install boto3[crt]要恢复到 Boto3 的非 CRT 版本使用以下命令
pip uninstall awscrt如果需要重新启用 CRT重新安装 boto3[crt] 以确保获得兼容版本 awscrt。
二、账户配置
在代码中配置账户信息
s3 boto3.resource(s3, aws_access_key_id, aws_secret_access_key)
# s3 boto3.client(s3, aws_access_key_id, aws_secret_access_key)在电脑配置文件中配置账户信息提前安装 AWS CLI 可以使用 aws configure 命令来修改配置文件可以直接修改配置文件默认情况下配置文件的位置为 ~/.aws/credentials。配置文件至少应该指定 aws_access_key_id 和 aws_secret_access_key。
三、代码示例
3.1 下载单个文件
import boto3# 配置S3连接
s3 boto3.resource(s3)
bucket_name your-bucket-name# 定义要下载的文件名
file_key your-file-path-in-s3# 下载文件
s3.Bucket(bucket_name).download_file(file_key, local-file-path)
3.2 下载文件夹内全部文件
def download_folder(bucket_name, folder, local_dirNone):Download an object from an S3 bucketcount 0bucket s3.Bucket(bucket_name)for obj in bucket.objects.filter(Prefixfolder):target obj.key #if local_dir is None else os.path.join(local_dir, os.path.relpath(obj.key, folder))if not os.path.exists(os.path.dirname(os.path.dirname(target))):os.makedirs(os.path.dirname(os.path.dirname(target)))# 额外下载文件夹中文件夹内的 object#if obj.key[-1] /:# continuetarget_path os.path.join(os.path.dirname(os.path.dirname(target)), target.split(/)[-1])bucket.download_file(obj.key, target_path)count 1print(cont: , count)