如果你没购买腾讯云短信服务,请关闭这个网页,或者浏览以下链接去学习如何购买腾讯云短信服务后,再来浏览页面下方的内容,避免浪费时间。
使用腾讯云短信教程
安装腾讯云短信的包
pip install qcloudsms_py
源码
# encoding:utf-8
from qcloudsms_py import SmsMultiSender, SmsSingleSender
from qcloudsms_py.httpclient import HTTPError
appid = ""
appkey = ""
sms_sign = ""
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:
"""
sender = SmsSingleSender(appid, appkey)
try:
# 中国号码:86, 美国号码:1
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:
"""
sender = SmsMultiSender(appid, appkey)
try:
# 中国号码:86, 美国号码:1
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
template_id=""
response = send_sms_single("手机号", template_id, ["参数1", "参数2"])
# response = send_sms_multi(["手机号1", "手机号2"], template_id, ["参数1","参数2"])
if response['result'] == 0 and response['errmsg'] == 'OK':
print("短信发送成功")
else:
print(f"短信发送失败:{response['errmsg']}")