欢迎您光临深圳塔灯网络科技有限公司!
电话图标 余先生:13699882642

网站百科

为您解码网站建设的点点滴滴

BOTO3使用

发表日期:2018-01 文章编辑:小灯 浏览次数:2735

  1. 下载安装
  2. quickstart

下载安装

pip install boto3 

配置

安装aws cli 客户端

pip install awscli 

note:

先安装boto3,再安装awscli 

安装完成后,在终端就可以type:

aws configure 

根据提示输入access_key_id, secret_access_key,and region name
除了在终端输入aws configure也可以在~/.aws/下的config 和Credentials 进行配置
链接:

boto3 session

class boto3.session.Session (aws_access_key_id=None, aws_secret_access_key=None, aws_session_token=None,region_name=None,botocore_session=None, profile_name=None) 

assession 存储配置状态并允许你创建服务客户端和资源
参数:

  • aws_access_key_id(字符串) -- AWS access key ID
  • aws_secret_access_key(字符串) -- AWS secret access key
  • aws_session_token(字符串) -- AWS 临时session token
  • region_name(字符串) -- 当创建新的连接时的默认区域
  • botocore_session(botocore.session_Session) -- 使用这个Botocore session 而不是创建一个 new dafault one
  • profile_name(字符串) -- 配置文件的名字去使用,如果没有给出,就用默认的profile

available_profiles
session 证书可用的配置文件
client(service_name,region_name=None, api_version=None,use_ssl=True, verify=None,endpoint=None, aws_acess_key_id=None, aws_secret_key=None,aws_session_token=None config=None)
通过名字去创建一个低等级的服务客户端
参数

  • service_name(字符串) -- 服务器的名字,例如 's3' 或者 'ec2',可以通过get_available_services() 去获得有效的一串服务器
  • region_name(字符串) -- 与客户端相关联的区域名字,一个客户端关联单个区域
  • api_version(字符串) -- 要用的API版本,默认的,当创建一个新的client,botocore将使用最新的API version.如果想用客户端的之前的API 版本,你只需要指明这个参数。
  • use_ssl(boolean) -- 是否使用SSL,默认是使用SSL,注意:不是所有的服务支持no-ssl 连接
  • verify(字符串或者布尔值) -- 是否去认证ssl证书,默认SSL证书需要认证,你可以提供以下的值False -不去认证SSL证书的有效性,SSL仍然被使用,但是SSL 证书不会被认证 path/to/cert/bundle.pem -要使用的CA证书包的文件名
  • endpoint_url -为构建的client去用的全的url,正常情况下,botocore会自动构建一个适合的URL去用来和服务器交流。你可以去指定一个全的URL,(including http/https 模型)去重写这个行为,如果这个value提供了,那use_ssl将被忽略
  • aws_access_key_id(字符串) - 完全的可选项,如果不提供, 将用session的配置,
  • aws_secret_access_key(字符串) - 与上面参数类似,可由session自动提供
  • aws_session_token(字符串) - 与上面类似
  • config(boto.client.Config) 高级的客户端配置选项

返回值
Service client instance

events

session的事件发射器


get_available_partitions()

列出可用的分区
返回类型:列表
返回值:返回一个含有分区名字的列表


__get_available_regions(service_name, partition_name='aws', allow_non_regional=False)

列出一个特定分区的区域和端点名字
返回值:一个包含端点名字的列表 例如["us-east-1"]

get_available_resources()

获得一个可用的能够通过Session.resources()加载为资源客户端的服务列表,
返回类型:列表
返回值:
服务名字的列表

get_available_services()

获得一个能通过Session.client() 加载为低等级客户端的服务
返回类型:列表
返回值:服务名字的列表

resource(service_name, region_name=None,api_verson=None, use_ssl=True, verify=None, endpoint_url=None, aws_access_key_id=None, aws_secret_access_key=None, aws_session_token=None, config=None)

通过名字创建一个资源服务客户端
返回值:
ServiceResource 的子类

Service Amazon S3

创建一个连接:

#boto3 import boto3 s3 = boto3.resource('s3') 

创建一个Bucket

在boto3,所有的行为必须通过关键字参数传递进去,并且,一个bucket的配置必须手动配置

# Boto 3 s3.create_bucket(Bucket='mybucket') s3.create_bucket(Bucket='mybucket',CreateBucketConfiguration={'LocationConstraint': 'us-west-1'}) 

访问一个bucket

用Boto3的resource 去获得一个bucket是非常方便的,但不会自动验证bucket是否真的存在

# Boto 3 import botocore bucket = s3.Bucket('mybucket') exists = True try: s3.meta.client.head_bucket(Bucket='mybucket') except botocore.exceptions.ClientError as e: # If a client error is thrown, then check thatit was a 404 error. # If it was a 404 error, then the bucket does not exist. error_code = int(e.response['Error']['Code']) if error_code == 404: exists = False 

发送到


本页内容由塔灯网络科技有限公司通过网络收集编辑所得,所有资料仅供用户学习参考,本站不拥有所有权,如您认为本网页中由涉嫌抄袭的内容,请及时与我们联系,并提供相关证据,工作人员会在5工作日内联系您,一经查实,本站立刻删除侵权内容。本文链接:https://dengtar.com/20387.html
相关开发语言
 八年  行业经验

多一份参考,总有益处

联系深圳网站公司塔灯网络,免费获得网站建设方案及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:余经理:13699882642

Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.