说明:最近公司要开发一个小程序,然后用户登录这个模块用到了短信验证码这个功能,然后写篇文章做一下记录。
腾讯云的每个新用户会有100条免费短信使用,用来自己学习测试使用还是够的,这个还是蛮不错的。但是这个免费的短信有时间限制,在三个月左右。过了这个时间就用不了。
开发语言:python3
开发模块:qcloudsms_py
云服务:腾讯云
要使用腾讯云的验证码功能,我们需要先注册腾讯云服务的账号,腾讯云网址:点我跳转腾讯云,然后我们需要注册账号,申请云应用,申请配置短信的签名,短信模板。之后就可以使用了。
import ssl import random ssl._create_default_https_context = ssl._create_unverified_context from qcloudsms_py import SmsSingleSender from qcloudsms_py.httpclient import HTTPError # 获取云短信应用的appid和appkey SDKAppID = '应用的appid' AppKey = '应用的appkey' #签名 sms_sign = '创建的签名' # 模板ID template_id = '创建的模板ID' # 输入的手机号 phone_number = '输入的手机号' # 获取随机6位数 def captcha(): captcha = '' for i in range(6): now_number = str(random.randint(0, 9)) captcha += now_number return captcha # 发送手机号验证码 def send_pcode(captcha): print('获取验证码',captcha) ssender = SmsSingleSender(SDKAppID, AppKey) # 模板中的参数,也就是{1}{2}这两个参数 params = [captcha, "5"] # 当模板没有参数时,`params = []` try: result = ssender.send_with_param(86, phone_number, template_id, params, sign=sms_sign, extend="", ext="") # 签名参数不允许为空串 print(result) except HTTPError as e: print(e) except Exception as e: print(e) if __name__ == '__main__': send_pcode(captcha())