在AWS SDK for Python(即boto3)中,可以使用以下代码示例编写一个用于从AWS S3存储桶下载文件的代理:
import boto3
def download_file_from_s3(bucket_name, file_key, local_file_path):
s3 = boto3.client('s3')
try:
s3.download_file(bucket_name, file_key, local_file_path)
print(f"File downloaded successfully from S3 bucket: {bucket_name}, key: {file_key}")
except Exception as e:
print(f"Error downloading file from S3 bucket: {bucket_name}, key: {file_key}")
print(str(e))
# 示例用法
bucket_name = 'your-bucket-name'
file_key = 'path/to/file.txt'
local_file_path = '/path/to/save/file.txt'
download_file_from_s3(bucket_name, file_key, local_file_path)
在上面的代码中,download_file_from_s3
函数接受三个参数:bucket_name
(S3存储桶名称),file_key
(要下载的文件在存储桶中的键),local_file_path
(要保存下载文件的本地路径)。
在函数内部,我们使用boto3.client('s3')
创建了一个S3客户端对象。然后,我们使用download_file
方法从指定的S3存储桶中下载文件,并将其保存到本地路径中。如果下载成功,将打印成功消息;如果发生错误,将打印错误消息。
要使用此代码示例,您需要安装boto3库。可以通过运行pip install boto3
来安装它。还需要正确配置AWS凭证,以便访问S3存储桶。您可以通过设置环境变量、使用AWS CLI配置文件或使用AWS配置文件来配置凭证。