首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >boto3的API文档在哪里?

boto3的API文档在哪里?
EN

Stack Overflow用户
提问于 2017-05-16 18:06:53
回答 1查看 2.6K关注 0票数 2

用户指南 for boto3指的是高级资源和低级客户端。通过将服务的名称分别传递给boto3.resourceboto3.client来访问它们。

这似乎有点迂腐--我可能会对每个资源或客户的名称做出合理的猜测--但在哪里可以找到可用资源的列表呢?除非我遗漏了一些东西,否则它似乎不会出现在用户指南中。我在任何地方都找不到更详细的API引用。

一旦我有了一个资源(比如EC2) --我在哪里找到关于我能用它做什么的文档?有一些示例在这里的用户指南,但它们似乎是一个子集。

这让我觉得我唯一的选择是检查REPL上的对象,寻找看似合理的方法名称。

我是不是漏掉了什么?人们实际上是如何使用这个图书馆的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-16 18:12:47

API文档如下:

https://boto3.readthedocs.io/en/stable/index.html

动态生成可用资源。如果您只是尝试创建一个伪资源,您应该能够在错误消息中看到当前可用的顶级资源:

代码语言:javascript
复制
>>> boto3.resource('potato')
ResourceNotExistsError: The 'potato' resource does not exist.
The available resources are:
   - cloudformation
   - cloudwatch
   - dynamodb
   - ec2
   - glacier
   - iam
   - opsworks
   - s3
   - sns
   - sqs

>>> boto3.client('bogus')
UnknownServiceError: Unknown service: 'bogus'. Valid service names are: acm, apigateway, application-autoscaling, appstream, autoscaling, batch, budgets, clouddirectory, cloudformation, cloudfront, cloudhsm, cloudsearch, cloudsearchdomain, cloudtrail, cloudwatch, codebuild, codecommit, codedeploy, codepipeline, codestar, cognito-identity, cognito-idp, cognito-sync, config, cur, datapipeline, devicefarm, directconnect, discovery, dms, ds, dynamodb, dynamodbstreams, ec2, ecr, ecs, efs, elasticache, elasticbeanstalk, elastictranscoder, elb, elbv2, emr, es, events, firehose, gamelift, glacier, health, iam, importexport, inspector, iot, iot-data, kinesis, kinesisanalytics, kms, lambda, lex-models, lex-runtime, lightsail, logs, machinelearning, marketplacecommerceanalytics, meteringmarketplace, mturk, opsworks, opsworkscm, organizations, pinpoint, polly, rds, redshift, rekognition, resourcegroupstaggingapi, route53, route53domains, s3, sdb, servicecatalog, ses, shield, sms, snowball, sns, sqs, ssm, stepfunctions, storagegateway, sts, support, swf, waf, waf-regional, workdocs, workspaces, xray

实际上,您可以对客户端执行从json文件动态生成操作。例如,这里是亚马逊冰川的服务描述。

客户端还可以使用以下方法告诉您可用的子资源:

代码语言:javascript
复制
>>> glacier = boto3.resource('glacier')
>>> glacier.get_available_subresources()
['Account', 'Archive', 'Job', 'MultipartUpload', 'Notification', 'Vault']

例如,实例化glacier.Archive()所需的参数是清楚地记录。文档非常好,但是从直接读取服务描述文件中也可以很容易地识别出相同的信息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44008633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档