使用Alibaba Cloud SDK for Python构造的所有API请求或者服务都通过客户端(client)来实现。本指南介绍了客户端的功能,并通过示例代码展示如何调用Alibaba Cloud SDK for Python,创建并使用一个客户端。

功能说明

客户端提供以下功能:

  • 提供对所有可用服务的访问。
  • 提供对服务中所有操作的访问。
  • 提供对访问域名的解析。
  • 提供对用户请求API的校验。
  • 使用正确的身份验证签名对请求进行签名。
  • 接受响应并返回Python数据结构中的数据。

get_client接口

您可以通过get_client接口创建客户端。

创建客户端(Client)时,您必须指定服务名称。服务名称(service)是表示您即将访问的服务。可用服务,请参见可用client列表。您也可以指定其他可选参数来配置客户端。例如,访问凭证、地域与可用区(region_id)等。

其部分可选参数说明如下:

access_key_id
您阿里云账号访问密钥的AccessKey ID。
AccessKey是针对阿里云账号和RAM用户发布的一种身份认证,包括一个AccessKey ID和一个AccessKey Secret。配置AccessKey访问凭证必须同时传入access_key_idaccess_key_secret的值。更多访问凭证的配置信息,请参见设置身份凭证
access_key_secret
您阿里云账号访问密钥的AccessKey Secret。
region_id
表示您创建资源的所在区域。更多详情,请参见设置Endpoint

示例代码

本文以ECS产品为例,说明如何创建并使用一个客户端。

# 使用client
from alibabacloud import get_client

# 创建ecs客户端
ecs_client = get_client(
    'ecs',  # 产品code
    access_key_id=your_access_key_id,  # 账号的AccessKey ID
    access_key_secret=your_access_key_secret,  # 账号的AccessKey Secret
    region_id=your_region_id  # 地域ID
)
# 创建并发出请求,获取结果
response = ecs_client.describe_instances(page_size=10)
# 获取实例的ImageId
for instance in response["Instances"]["Instance"]:
    print(instance.get("ImageId"))