Skip to main content
SDK 使用文档
========

A low-level interface to a growing number of KSC Web Services.


----------------
Install 安装
----------------

+ pip 安装
+ pip install ksc-sdk-python

+ github 安装
+ 通过 `GitHub <https://github.com/liuyichen/kscore>`__ 下载
+ 进入`kscore`目录通过命令 python setup.py install 安装

----------------
Config 配置
----------------

+ 申请安全凭证:

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

+ 通过文件配置及管理密钥,参考examples内示例:

+ 所在位置: '/etc/kscore.cfg' 或 './.kscore.cfg' 或 'C:\\kscore.cfg'

+ 注意: 使用相对路径时,需与运行目录保持一致。
::

[Credentials]
ks_access_key_id=AKLTyW1V6ZWET7aIvdeeIH1cwQ
ks_secret_access_key=OEoTK4IgEBIq3rlFsbpcESs87w513D6aOwdXxP6QHuvWlonSRYeKQyTzqc1XkUvpuQ==

+ 或在程序运行时配置:

::

from kscore.session import get_session
# 密钥
ACCESS_KEY_ID = "AKLTyW1V6ZWET7aIvdeeIH1cwQ"
SECRET_ACCESS_KEY = "OEoTK4IgEBIq3rlFsbpcESs87w513D6aOwdXxP6QHuvWlonSRYeKQyTzqc1XkUvpuQ=="

s = get_session()
client = s.create_client("iam", ks_access_key_id=ACCESS_KEY_ID, ks_secret_access_key=SECRET_ACCESS_KEY)

----------------
Service 服务
----------------

+ 已支持大区 region_name

+-------------------+------------+
| region_name | 大区 |
+===================+============+
| cn-beijing-5 | 北京5区 |
+-------------------+------------+
| cn-beijing-6 | 北京6区 |
+-------------------+------------+
| cn-shanghai-2 | 上海2区 |
+-------------------+------------+

+ 已支持服务列表 service_name,具体方法与API的Action对应,如kec服务RunInstances对应为run_instances方法。 `详情参考API手册 <http://docs.ksyun.com>`__

+-------------------+----------------+
| service | 服务名 |
+===================+================+
| iam | 身份与访问控制 |
+-------------------+----------------+
| eip | 弹性IP |
+-------------------+----------------+
| kec | 云服务器 |
+-------------------+----------------+
| tag | 标签服务 |
+-------------------+----------------+
| slb | 负载均衡 |
+-------------------+----------------+
| kcs | REDIS |
+-------------------+----------------+
| vpc | 虚拟私有网络 |
+-------------------+----------------+
| cdn | 内容分发网络 |
+-------------------+----------------+
| monitor | 云监控 |
+-------------------+----------------+
| offline | 视频转码 |
+-------------------+----------------+

----------------
Method 方法
----------------

+ 常用方法

+ get_session

+---------------------------+---------------------------------------+
| 参数 | 说明 |
+===========================+=======================================+
| env_vars | 环境变量 |
+---------------------------+---------------------------------------+

+ create_client

+---------------------------+---------------------------------------+
| 参数 | 说明 |
+===========================+=======================================+
| service_name | 服务,必须参数,例:iam |
+---------------------------+---------------------------------------+
| region_name=None | 大区,必须参数,全局服务可以为None |
+---------------------------+---------------------------------------+
| api_version=None | API 版本,默认使用最近版本 |
+---------------------------+---------------------------------------+
| use_ssl=True | 是否使用HTTPS,优先使用 |
+---------------------------+---------------------------------------+
| verify=None | 是否验证SSL证书 |
+---------------------------+---------------------------------------+
| endpoint_url=None | |
+---------------------------+---------------------------------------+
| ks_access_key_id=None | |
+---------------------------+---------------------------------------+
| ks_secret_access_key=None | |
+---------------------------+---------------------------------------+
| ks_session_token=None | |
+---------------------------+---------------------------------------+


----------------
Examples 示例
----------------

+ IAM

::

from kscore.session import get_session

if __name__ == "__main__":
s = get_session()

client = s.create_client("iam", use_ssl=False)

users = client.list_users()

+ KEC

::

from kscore.session import get_session

if __name__ == "__main__":
s = get_session()

client = s.create_client("kec", "cn-beijing-6", use_ssl=False)

client.[your method]()

+ MONITOR

::

from kscore.session import get_session

if __name__ == "__main__":
s = get_session()

client = s.create_client("monitor", "cn-beijing-5", use_ssl=True)

m=client.get_metric_statistics(InstanceID="6f582c78-5d49-438e-bf2d-db4345daf503",Namespace="eip",MetricName="qos.bps_in",StartTime="2016-08-16T17:09:00Z",EndTime="2016-08-16T23:56:00Z",Period="600",Aggregate="Average")

print json.dumps(m,sort_keys=True,indent=4)

+ OFFLINE

::

from kscore.session import get_session
import json

if __name__=="__main__":

#初始化
s = get_session()
client = s.create_client("offline", "cn-beijing-6", use_ssl=False)

#创建模板接口调用示例 : preset
presetname = 'testpreset'
description = 'just a demo'
presetType = 'avop'
param = {
"preset": presetname,
"description": description,
"presettype": presetType,
"param": {
"f": "mp4",
"AUDIO": {
"acodec": "aac",
"ar":"44100",
"ab":"64k"
},
"VIDEO": {
"vr": 25,
"vb": "500k",
"vcodec": "h264",
"width": 640,
"height": 360
}
}
}
res = client.preset(**param)
print json.dumps(res)

#获取模板信息接口调用示例 : get_preset_detail
res = client.get_preset_detail(preset = presetname)
print json.dumps(res)

+ 更多

--------------------
BUG FIXED 问题修正
--------------------

+ CERTIFICATE_VERIFY_FAILED
::

requests.exceptions.SSLError: [Errno 1] _ssl.c:504: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

+ 参考 `InsecurePlatformWarning <https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings>`__ 解决方法如下
::

pip install requests[security]

+ 如 `build/temp.linux-x86_64-2.7/_openssl.c:433:30: fatal error: openssl/opensslv.h: No such file or directory` 解决方法如下
::

yum install openssl-devel

+ 如 `build/temp.linux-x86_64-2.7/_openssl.c:12:24: fatal error: pyconfig.h: No such file or directory`解决方法如下
::

yum install python-devel

--------------------
Contact Information
--------------------

服 务 群 号: 580681922

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ksc-sdk-python-1.1.0.zip (754.5 kB view details)

Uploaded Source

File details

Details for the file ksc-sdk-python-1.1.0.zip.

File metadata

  • Download URL: ksc-sdk-python-1.1.0.zip
  • Upload date:
  • Size: 754.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ksc-sdk-python-1.1.0.zip
Algorithm Hash digest
SHA256 0b506368dd842e3c350bed69a63df96af4fc4973dac12c976d321c89555f38da
MD5 106d0f162bb0f50ba9379b72952d9d6a
BLAKE2b-256 990d8a4ecd9db7230acf86f6b75e2b9b344c111d77b32e4756e562b0ad0a7d97

See more details on using hashes here.

Release history Release notifications | RSS feed

1.3.65

1 file

1.3.64

1 file

1.3.63

1 file

1.3.62

1 file

1.3.61

1 file

1.3.60

1 file

1.3.59

1 file

1.3.58

2 files

1.3.57

2 files

1.3.54

2 files

1.3.53

2 files

1.3.52

2 files

1.3.51

2 files

1.3.50

2 files

1.3.49

2 files

1.3.48

2 files

1.3.47

2 files

1.3.46

2 files

1.3.45

2 files

1.3.44

2 files

1.3.43

2 files

1.3.42

2 files

1.3.41

2 files

1.3.40

2 files

1.3.39

2 files

1.3.38

2 files

1.3.36

2 files

1.3.35

2 files

1.3.34

1 file

1.3.33

2 files

1.3.32

2 files

1.3.31

2 files

1.3.30

3 files

1.3.29

2 files

1.3.28

2 files

1.3.27

2 files

1.3.26

2 files

1.3.25

2 files

1.3.24

2 files

1.3.23

2 files

1.3.21

1 file

1.3.20

1 file

1.3.19

1 file

1.3.17

1 file

1.3.16

1 file

1.3.14

1 file

1.3.13

1 file

1.3.11

1 file

1.3.10

2 files

1.1.1

1 file

This release

1.1.0 This release

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page