Skip to content

kingsoftcloud/sdk-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

简介

欢迎使用金山云开发者工具套件(SDK) 为方便 Python 开发者调试和接入金山云产品 API,这里向您介绍适用于 Python 的金山云开发工具包,并提供首次使用开发工具包的简单示例。让您快速获取金山云 Python SDK 并开始调用。

依赖环境

  1. 依赖环境:Python 2.7, 3.6-3.10 版本。
  2. 从 金山云控制台 开通相应产品。
  3. 获取 SecretID、SecretKey 以及调用地址(endpoint),具体参考各产品说明。

获取安装

安装 Python SDK 前,先获取安全凭证。在第一次使用云 API 之前,用户首先需要在金山云控制台上申请安全凭证,安全凭证包括 SecretID 和 SecretKey, SecretID 是用于标识 API 调用者的身份,SecretKey 是用于加密签名字符串和服务器端验证签名字符串的密钥。SecretKey 必须严格保管,避免泄露。

通过 Pip 安装(推荐)

您可以通过 pip 安装方式将金山云 API Python SDK 安装到您的项目中,如果您的项目环境尚未安装 pip,请详细参见 pip官网 安装。

通过pip方式安装或更新请在命令行中执行以下命令:

pip install --upgrade kingsoftcloud-sdk-python

请注意,如果同时有 python2 和 python3 环境, python3 环境需要使用 pip3 命令安装。

通过源码包安装

前往 Github 仓库 下载最新代码,解压后

$ cd kingsoftcloud-sdk-python
$ python setup.py install

示例

以调用子用户列表接口为例。

import os
from ksyun.common import credential
from ksyun.common.profile.client_profile import ClientProfile
from ksyun.common.profile.http_profile import HttpProfile
from ksyun.common.exception.ksyun_sdk_exception import KsyunSDKException
from ksyun.client.iam.v20151101 import client, models

try:
    # 实例化一个证书对象,入参需要传入secretId,secretKey
    cred = credential.Credential(
        os.environ.get("KSYUN_SECRET_ID", "KSYUN_SECRET_ID_HERE"),
        os.environ.get("KSYUN_SECRET_KEY", "KSYUN_SECRET_KEY_HERE")
    )
    httpProfile = HttpProfile()
    httpProfile.endpoint = "iam.api.ksyun.com"
    httpProfile.reqMethod = "GET"  # get请求(默认为post请求)
    httpProfile.reqTimeout = 30  # 请求超时时间,单位为秒(默认60秒)

    clientProfile = ClientProfile()
    clientProfile.httpProfile = httpProfile
    client = client.IamClient(cred, "cn-beijing-6", clientProfile)

    # 实例化一个请求对象, 每个接口都会对应一个request对象。
    req = models.CreateUserRequest()
    # 传参
    req.UserName = "test2_user_name"
    # 调用接口返回
    resp = client.CreateUser(req)
    print(resp)
except KsyunSDKException as err:
    print(err)

注意,您必须明确知道您调用的接口所需参数,否则可能会调用失败。

更多示例

参见金山云控制台-API Explorer-对应服务-SDK示例

代理

如果是有代理的环境下,可通过两种方式设置代理

  1. 在初始化HttpProfile时指定proxy,参考example
  2. 需要设置系统环境变量 https_proxy

否则可能无法正常调用,抛出连接超时的异常。