通过阅读本文,您可以快速了解服务端Python SDK的使用方法。
前提条件
您已安装Python 2.7或以上版本。
操作步骤
- 登录服务端。
- 安装SDK。
- 安装阿里云核心SDK。
sudo pip install aliyun-python-sdk-core
- 安装阿里云视频直播SDK。
sudo pip install aliyun-python-sdk-live
- 更新SDK。
- 更新阿里云核心SDK。
sudo pip install aliyun-python-sdk-core --upgrade
- 更新阿里云视频直播SDK。
sudo pip install aliyun-python-sdk-live --upgrade
- 使用SDK。
- 文件说明。本文以SDK中的
DescribeCastersRequest.py
文件为例介绍。# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
#
# http://www.apache.org/licenses/LICENSE-2.0
#
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
from aliyunsdkcore.request import RpcRequest
from aliyunsdklive.endpoint import endpoint_data
class DescribeCastersRequest(RpcRequest):
def __init__(self):
RpcRequest.__init__(self, 'live', '2016-11-01', 'DescribeCasters','live')
self.set_method('POST')
if hasattr(self, "endpoint_map"):
setattr(self, "endpoint_map", endpoint_data.getEndpointMap())
if hasattr(self, "endpoint_regional"):
setattr(self, "endpoint_regional", endpoint_data.getEndpointRegional())
def get_StartTime(self): # String
return self.get_query_params().get('StartTime')
def set_StartTime(self, StartTime): # String
self.add_query_param('StartTime', StartTime)
def get_PageNum(self): # Integer
return self.get_query_params().get('PageNum')
def set_PageNum(self, PageNum): # Integer
self.add_query_param('PageNum', PageNum)
def get_CasterName(self): # String
return self.get_query_params().get('CasterName')
def set_CasterName(self, CasterName): # String
self.add_query_param('CasterName', CasterName)
def get_PageSize(self): # Integer
return self.get_query_params().get('PageSize')
def set_PageSize(self, PageSize): # Integer
self.add_query_param('PageSize', PageSize)
def get_NormType(self): # String
return self.get_query_params().get('NormType')
def set_NormType(self, NormType): # String
self.add_query_param('NormType', NormType)
def get_CasterId(self): # String
return self.get_query_params().get('CasterId')
def set_CasterId(self, CasterId): # String
self.add_query_param('CasterId', CasterId)
def get_EndTime(self): # String
return self.get_query_params().get('EndTime')
def set_EndTime(self, EndTime): # String
self.add_query_param('EndTime', EndTime)
def get_OwnerId(self): # Long
return self.get_query_params().get('OwnerId')
def set_OwnerId(self, OwnerId): # Long
self.add_query_param('OwnerId', OwnerId)
def get_OrderByModifyAsc(self): # String
return self.get_query_params().get('OrderByModifyAsc')
def set_OrderByModifyAsc(self, OrderByModifyAsc): # String
self.add_query_param('OrderByModifyAsc', OrderByModifyAsc)
def get_ChargeType(self): # Integer
return self.get_query_params().get('ChargeType')
def set_ChargeType(self, ChargeType): # Integer
self.add_query_param('ChargeType', ChargeType)
def get_Status(self): # Integer
return self.get_query_params().get('Status')
def set_Status(self, Status): # Integer
self.add_query_param('Status', Status)
该文件中对于DescribeCastersRequest这个类,有若干组一一对应的get_X
和set_X
方法,分别用于获取和设定该API请求的参数。
- 调用接口。此处以v20161101版本为例,调用DescribeCasters接口。
#!/usr/bin/env python
#coding=utf-8
from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.acs_exception.exceptions import ClientException
from aliyunsdkcore.acs_exception.exceptions import ServerException
from aliyunsdkcore.auth.credentials import AccessKeyCredential
from aliyunsdkcore.auth.credentials import StsTokenCredential
from aliyunsdklive.request.v20161101.DescribeCastersRequest import DescribeCastersRequest
#初始化client
#AK和Secrect需要自己提供(可以在阿里云控制台中找到)
#以访问cn-hangzhou region为例
credentials = AccessKeyCredential('<your-access-key-id>', '<your-access-key-secret>')
# use STS Token
# credentials = StsTokenCredential('<your-access-key-id>', '<your-access-key-secret>', '<your-sts-token>')
client = AcsClient(region_id='cn-hangzhou', credential=credentials)
#构造需发起的API请求调用
request = DescribeCastersRequest()
request.set_accept_format('json')
request.set_CasterId("testCase")
request.set_CasterName("testName")
request.set_StartTime("2020-01-01T12:00:01")
#发起请求
response = client.do_action_with_exception(request)
# python2: print(response)
#请求结果
print(str(response, encoding='utf-8'))
后续步骤
如果您需要移除SDK,请执行以下命令:
- sudo pip uninstall aliyun-python-sdk-core
- sudo pip uninstall aliyun-python-sdk-live