我了解到boto3提供了两个抽象级别:一个称为client的低级API,它是API的一个薄包装器;另一个称为resource的高级客户机,它提供真实的Python对象。我的问题是,resource API的API文档在哪里?
我发现了这个:
https://boto3.readthedocs.io/en/stable/reference/services/ec2.html#client
但是这描述了client API,并且没有到resource API的1到1映射。例如,枚举实例在describe_instances()对象上称为instances.all(),在resource对象上称为instances.all()。
接下来我发现了这个:
http://boto3.readthedocs.io/en/stable/reference/core/resources.html?highlight=resource
这描述了一组基类和工厂方法,但它并不描述特定服务(如EC2 )的API。
在运行时,我打印了一个感兴趣的对象,发现它是一个boto3.resources.factory.ec2.ServiceResource,但是搜索boto3文档并不显示该资源的任何人类可读的文档。
是否有一个API文档来解释所有不同的Python类是什么,以及它们有哪些属性/方法?我可以在运行时打印出来,例如print(dir(ec2)),但是这是发现API的一种非常乏味的方法。
发布于 2018-03-08 16:18:14
谢谢@jordanm在评论中的回答。我正在扩展到一个更详细的答案。
client文档包含一个名为“服务资源”的部分,我以前没有注意到。
突出显示了目录中的服务资源:

单击此标题将显示EC2资源实例的方法和属性.

发布于 2018-10-24 20:13:06
希望这个答案对一些人有用,尽管为时已晚。
相应地使用这两个链接
以第一篇为主要参考。这是在另一个答案https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2.html#service-resource中提供的链接
第二部分提供了更详细的方法和属性,用于特定资源,如实例、图像、VPC等。
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2.html
^this is almost the same link -- all options below the service-resource provide detailed info on that particular resource such as instance,image etc.,
https://stackoverflow.com/questions/49177491
复制相似问题