简介

由于项目在注册、登录、找回密码 时需要发送短信验证的功效,我们使用腾讯云短信做。

为什么要用腾讯云短信呢? 由于注册就送 100条免费短信 的额度。

实现

注册腾讯云

注册一个腾讯云账户,腾讯云中提供了许多功效:云服务器、云存储你、云直播、云短信等许多功效。

注册地址:https://cloud.tencent.com/

注册并要实名认证

开通云短信

建立应用

建立应用并将应用中天生的 SDK AppIDApp Key 复制下来,之后通过python发送短信时需要用到。

建立署名

在腾讯云短信署名时需要认证,认证需要填写署名类型:网站、APP、小程序、民众号,前三种需要提供企业资质等庞大的器械,小我私家民众号认证会对照便捷,以是推荐小我私家开发的话使用 民众号 举行署名。

so,咱们需要先 申请一个民众号 然后 建立署名

申请微信订阅号

注册地址:https://mp.weixin.qq.com/

建立署名

建立模板

发送短信

上述的准备工作做完中我们开通相关服务并获取到如下几个值:

# 建立应用,获取到 appid 和 appkey
# 建立署名,获取 署名内容
# 建立模板,获取 模板ID

接下来开始使用Python发送短信。

安装SDK

pip install qcloudsms_py

基于SDK发送短信

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import ssl
# ssl._create_default_https_context = ssl._create_unverified_context
from qcloudsms_py import SmsMultiSender, SmsSingleSender
from qcloudsms_py.httpclient import HTTPError
def send_sms_single(phone_num, template_id, template_param_list):
    """
    单条发送短信
    :param phone_num: 手机号
    :param template_id: 腾讯云短信模板ID
    :param template_param_list: 短信模板所需参数列表,例如:【验证码:{1},形貌:{2}】,则通报参数 [888,666]按顺序去格式化模板
    :return:
    """
    appid = 112142311  # 自己应用ID
    appkey = "8cc5b87123y423423412387930004"  # 自己应用Key
    sms_sign = "Python之路"  # 自己腾讯云建立署名时填写的署名内容(使用民众号的话这个值一样平常是民众号全称或简称)
    sender = SmsSingleSender(appid, appkey)
    try:
        response = sender.send_with_param(86, phone_num, template_id, template_param_list, sign=sms_sign)
    except HTTPError as e:
        response = {'result': 1000, 'errmsg': "网络异常发送失败"}
    return response
def send_sms_multi(phone_num_list, template_id, param_list):
    """
    批量发送短信
    :param phone_num_list:手机号列表
    :param template_id:腾讯云短信模板ID
    :param param_list:短信模板所需参数列表,例如:【验证码:{1},形貌:{2}】,则通报参数 [888,666]按顺序去格式化模板
    :return:
    """
    appid = 112142311
    appkey = "8cc5b87123y423423412387930004"
    sms_sign = "Python之路"
    sender = SmsMultiSender(appid, appkey)
    try:
        response = sender.send_with_param(86, phone_num_list, template_id, param_list, sign=sms_sign)
    except HTTPError as e:
        response = {'result': 1000, 'errmsg': "网络异常发送失败"}
    return response
if __name__ == '__main__':
    result1 = send_sms_single("15131255089", 548760, [666, ])
    print(result1)
    result2 = send_sms_single( ["15131255089", "15131255089", "15131255089", ],548760, [999, ])
    print(result2)
关于频率限制

腾讯云短信后台可以举行 短信频率 的限制。

然则,由于我们是免费用户以是无法举行设置,只能使用默认的设置(30秒发1条/1小时发5条/1天发10条)。

,

欧博亚洲

欢迎进入欧博亚洲(Allbet Game):www.aLLbetgame.us,欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。

Allbet Gaming声明:该文看法仅代表作者自己,与阳光在线无关。转载请注明:联博开奖网:03 . Django之腾讯云短信
发布评论

分享到:

ug环球手机版下载:卖出口诀附图详解 「建议珍藏」
1 条回复
  1. ALLBET官网娱乐平台开户
    ALLBET官网娱乐平台开户
    (2020-06-18 01:01:56) 1#

    欧博Allbet欢迎进入欧博Allbet官网(Allbet Game):www.aLLbetgame.us,欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。怎么样怎么样

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。