
# Python SDK使用指导
MSGSMS提供Python语言的应用侧SDK供开发者使用。本文介绍Python SDK的安装和配置，及使用Python SDK调用[API参考](https://support.huaweicloud.com/api-msgsms/sms_05_0007.html)的示例，您可以参考本章节进行快速集成开发。
#### 开发前准备
- 已[注册](https://reg.huaweicloud.com/registerui/public/custom/register.html?locale=zh-cn#/register)华为账号并开通华为云，完成[企业实名认证](https://account.huaweicloud.com/usercenter/#/accountindex/realNameAuth)。
- 已具备Python开发环境 ，支持Python 3.3及以上版本。
- 已获取华为云账号对应的Access Key（AK）和Secret Access Key（SK）。 请在华为云控制台"我的凭证 \> 访问密钥"页面上创建和查看您的AK/SK。具体请参见[访问密钥](https://support.huaweicloud.com/usermanual-ca/ca_01_0003.html)。
  
 
#### 安装SDK
执行如下命令安装华为云Python SDK核心库以及相关服务库。
使用SDK前，您需要安装"huaweicloudsdkcore"和"huaweicloudsdkmsgsms"，具体的SDK版本号请参见[SDK开发中心](https://console.huaweicloud.com/apiexplorer/#/sdkcenter/MSGSMS?lang=Python)。
- 使用pip安装 执行如下命令安装华为云Python SDK核心库以及相关服务库：
  ```
  # 安装核心库
  pip install huaweicloudsdkcore
  # 安装MSGSMS服务库
  pip install huaweicloudsdkmsgsms
  ```
  

- 使用源码安装 执行如下命令安装华为云Python SDK核心库以及相关服务库：
  ```
  # 安装核心库
  cd huaweicloudsdkcore-${version}
  python setup.py install
  # 安装MSGSMS服务库
  cd huaweicloudsdkmsgsms-${version}
  python setup.py install
  ```
  
 
#### 代码示例
以调用[创建短信应用](https://support.huaweicloud.com/api-msgsms/sms_05_0023.html)接口为例，以下代码示例向您展示使用Python SDK的主要步骤：
1. 创建认证。
2. 创建MsgsmsClient实例并初始化。
3. 实例化请求对象。
4. 调用创建短信应用接口。
   ```
   from huaweicloudsdkcore.auth.credentials import BasicCredentials
   from huaweicloudsdkmsgsms.v2.region.msgsms_region import MsgsmsRegion
   from huaweicloudsdkcore.exceptions import exceptions
   from huaweicloudsdkmsgsms.v2 import *
   if __name__ == "__main__":
       # 认证用的ak和sk直接写到代码中有很大的安全风险，建议在配置文件或者环境变量中密文存放，使用时解密，确保安全。
       # 本示例以ak和sk保存在环境变量中为例，运行本示例前请先在本地环境中设置环境变量CLOUD_SDK_AK和CLOUD_SDK_SK。
       ak = os.environ["CLOUD_SDK_AK"]
       sk = os.environ["CLOUD_SDK_SK"]
       # 创建认证     
       # 创建BasicCredentials实例并初始化
       credentials = BasicCredentials(ak, sk)
       client = MsgsmsClient.new_builder() \
           .with_credentials(credentials) \
           .with_region(MsgsmsRegion.value_of("cn-north-4")) \
           .build()
       try:
           # 实例化请求对象
           request = CreateAppRequest()
           request.body = SmsAppAddReq(
           )
           # 调用创建短信应用接口
           response = client.create_app(request)
           print(response)
       except exceptions.ClientRequestException as e:
           print(e.status_code)
           print(e.request_id)
           print(e.error_code)
           print(e.error_msg)
   ```
   
   | 参数                                 | 说明                                                                                                                                                                                                                                                                                               |
   |:---|:---|
   | ak                                 | 您的华为云账号访问密钥ID（Access Key ID）。                                                                                                                                                                                                                                                                    |
   | sk                                 | 您的华为云账号秘密访问密钥（Secret Access Key）。                                                                                                                                                                                                                                                                |
   | MsgsmsRegion.valueOf("cn-north-4") | 请替换为您要访问的MSGSMS平台所在区域，当前MSGSMS支持访问的区域，在SDK代码[msgsms_region.py](https://github.com/huaweicloud/huaweicloud-sdk-python-v3/blob/master/huaweicloud-sdk-msgsms/huaweicloudsdkmsgsms/v2/region/msgsms_region.py)中已经定义。 您可以在MSGSMS控制台页面左上角查看当前服务所在区域名称。 |
      
   ![](https://support.huaweicloud.com/sdkreference-msgsms/public_sys-resources/note_3.0-zh-cn.png)
   项目源码及更多详细的使用指导请参考[华为云Python软件开发工具包（Python SDK）](https://github.com/huaweicloud/huaweicloud-sdk-python-v3/blob/master/README_CN.md)。
   推荐您使用API在线调试工具[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/MSGSMS/doc?api=CreateApp) ，API Explorer支持快速调试和检索，调试API的同时，可以根据您的参数实时生成各种开发语言的SDK示例代码，方便您直接根据示例代码使用SDK。
   
 
