Python調用騰訊雲短信服務發送手機短信

1、準備工作

pip install qcloudsms_py

1.註冊騰訊雲賬號

2.在產品列表內找到短信,在短信內添加應用

3.獲取對應的SDK AppID 和 App Key

4.配置短信內容

註:需先申請“短信簽名”和“短信正文”,按照要求填寫申請即可,騰訊雲的審核效率還是很快的,一般在1-2個小時內就會有結果

註:騰訊雲的短信服務現在好像也不免費瞭,之前每個月還會贈送100條免費短信額度。總結:準備工作準備內容:SDK AppID、App Key、應用簽名、短信正文模板ID

2、代碼實現

# -*- coding: utf-8 -*-
"""
@author: rzb
@software: PyCharm
@file: sms_qcloud.py
@time: 2019/8/21 11:54
"""
from qcloudsms_py import SmsSingleSender
from qcloudsms_py.httpclient import HTTPError
import random
# 使用騰訊雲發送手機6位隨機驗證碼
class TestQCloudSMS(object):
    def __init__(self, phone_num):
        self.appid = ****  # 準備工作中的SDK AppID,類型:int
        self.appkey = ****   # 準備工作中的App Key,類型:str
        self.phone_num = phone_num
        self.sign = 'rzbbzr公眾號'  # 準備工作中的應用簽名,類型:str
    def make_code(self):
        """
        :return: code 6位隨機數
        """
        code = ''
        for item in range(6):
            code += str(random.randint(0, 9))
        return code
    def send_msg(self):
        ssender = SmsSingleSender(self.appid, self.appkey)
        try:
            # parms參數類型為list
            rzb = ssender.send_with_param(86, self.phone_num, 短信正文模板ID, [self.make_code()],
                                          sign=self.sign, extend='', ext='')
            print(rzb)
        except HTTPError as http:
            print("HTTPError", http)
        except Exception as e:
            print(e)
if __name__ == '__main__':
    phone_num = ['188********', '185********', '176********']
    sendmsg = TestQCloudSMS(random.choices(phone_num)[0])   # 需傳入發送短信的手機號,單發
    sendmsg.send_msg()

3、拓展

官方文檔中心裡面給出瞭多種API的詳細使用,有興趣的同學可以去看看

騰訊雲文檔中心:https://cloud.tencent.com/document/product/382/5976

4、閑聊

可用於但不限於以下用途

  • 腳本觸發/告警
  • 事務提醒
  • 追番更新、電視劇更新等
  • ……

以上就是Python調用騰訊雲短信服務發送手機短信的詳細內容,更多關於Python騰訊雲發送短信服務的資料請關註WalkonNet其它相關文章!

推薦閱讀: