全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
阿里云SDK开发指南

使用Python SDK

更新时间:2018-02-24 09:27:06

安装SDK

阿里云Python SDK支持 Python 2.6.x, 2.7.x 和 3.x及以上环境,并提供pip和Github两种安装方式。

方式一:使用pip安装(推荐)

执行以下命令,通过pip安装SDK。

  1. pip install aliyun-python-sdk-core # 安装阿里云 SDK 核心库
  2. pip install aliyun-python-sdk-ecs # 安装管理 ECS 的库
  3. pip install aliyun-python-sdk-rds # 安装管理 RDS 的库

说明:如果您使用的是 python3.x,请将pip install aliyun-python-sdk-core修改为pip install aliyun-python-sdk-core-v3

方式二:使用Github安装

执行以下命令,通过Github安装Python SDK。

  1. git clone https://github.com/aliyun/aliyun-openapi-python-sdk.git
  2. # 安装阿里云 SDK 核心库
  3. cd aliyun-python-sdk-core
  4. python setup.py install
  5. # 安装阿里云 ECS SDK
  6. cd aliyun-python-sdk-ecs
  7. python setup.py install

您还可以通过访问阿里云SDK频道来获取Python SDK。

设置身份验证凭据

当使用阿里云 SDK 访问阿里云服务时,您需要提供阿里云账号进行身份验证。目前,Python SDK 支持以下几种身份验证方式。本操作中以AccessKey为例进行介绍。

  • AccessKey
  • STS Token
  • STS RoleArn
  • Ecs无AK访问
  • RSA非对称加密

注意: 为了保证您的账号安全,建议您使用RAM账号来访问阿里云服务。阿里云账号的AccessKey对拥有的资源有完全的权限。RAM账号由阿里云账号授权创建,仅有对特定资源限定的操作权限。

步骤一 获取AccessKey

AccessKey管理控制台获取访问阿里云API所需的AccessKey ID以及AccessKey Secret。

步骤二 设置访问凭证

如果您使用AccessKey作为访问凭据,我们提供了一个便捷的入口来设置访问凭证。

注意:请务必确保包含AccessKey的代码不会泄漏(例如提交到外部公开的GitHub项目),否则将会危害您的阿里云账号的信息安全。

  1. client = AcsClient(
  2. "<access-key-id>",
  3. "<access-key-secret>",
  4. "<region-id>"
  5. );

发起调用

使用阿里云Python SDK发起请求时,需要以下几个步骤,本操作中以ECS为例。

  1. 导入相关产品的SDK。
    1. from aliyunsdkcore.client import AcsClient
    2. from aliyunsdkcore.acs_exception.exceptions import ClientException
    3. from aliyunsdkcore.acs_exception.exceptions import ServerException
    4. from aliyunsdkecs.request.v20140526 import DescribeInstancesRequest
    5. from aliyunsdkecs.request.v20140526 import StopInstanceRequest
  2. 新建一个AcsClient。
    1. client = AcsClient(
    2. "<your-access-key-id>",
    3. "<your-access-key-secret>",
    4. "<your-region-id>"
    5. );
  3. 创建Request对象,并对其中参数赋值。
    1. request = DescribeInstancesRequest.DescribeInstancesRequest()
    2. request.set_PageSize(10)
  4. 发起调用并处理返回。
    1. response = client.do_action_with_exception(request)
    2. print response
本文导读目录