1、申请阿里云短信服务,具体步骤看我的python2-Django配置短信服务
2、安装依赖
aliyun-python-sdk-core-v3
aliyun-python-sdk-dysmsapi==1.0.0
3、配置基本信息
# 注意:不要更改 REGION = "cn-hangzhou" PRODUCT_NAME = "Dysmsapi" DOMAIN = "dysmsapi.aliyuncs.com" SIGN_NAME = \'你的签名\' # 可以设置多个,按需求选取即可 # ACCESS_KEY_ID 和 ACCESS_KEY_SECRET 为阿里云短信申请的 ACCESS_KEY_ID = "" ACCESS_KEY_SECRET = ""
4、调用上述设置
acs_client = AcsClient(ACCESS_KEY_ID, ACCESS_KEY_SECRET, REGION)
region_provider.add_endpoint(PRODUCT_NAME, REGION, DOMAIN)
5、调用官方SDK发送方法
def ali_send_sms(business_id, phone_numbers, sign_name, template_code, template_param=None): sms_request = SendSmsRequest.SendSmsRequest() # 申请的短信模板编码,必填 sms_request.set_TemplateCode(template_code) # 短信模板变量参数 if template_param is not None: sms_request.set_TemplateParam(template_param) # 设置业务请求流水号,必填。 sms_request.set_OutId(business_id) # 短信签名 sms_request.set_SignName(sign_name) # 短信发送的号码列表,必填。 sms_request.set_PhoneNumbers(phone_numbers) # 调用短信发送接口,返回json sms_response = acs_client.do_action_with_exception(sms_request) sms_rsp = json.loads(sms_response) if sms_rsp.get(\'Code\') != \'OK\': log.exception(\'========短信发送失败 原因\') log.exception(sms_rsp.get(\'Message\')+\',\'+str(phone_numbers)) return False return True
7、按自己需求开发弄得方法
def send_sms(mobile_no, content, template_code): """ 发送短信 :param mobile_no: 手机号码 :param content: 发送内容(json格式) :param template_code: 模板代码 :return: """ try: __business_id = uuid.uuid1() params = content send_res = ali_send_sms(__business_id, mobile_no, SIGN_NAME, template_code, params) return send_res except Exception as ex: log.exception(ex) return False def send_verify_code(mobile_no, template_code, random_number=None): """ 发送校验码 :param mobile_no: 手机号码 :param random_number: 验证码 :param template_code: 模板代码 :return: """ if random_number is None: random_number = random.randrange(1, 10000, 5) content = \'{"code": "\' + str(random_number) + \'"}\' return send_sms(mobile_no, content, template_code)
8、调用发送短信
if __name__ == \'__main__\': # 发送验证码 send_verify_code("要发送的电话号码", "你申请的验证码模板CODE") # 发送通知短信 content = dict() content[\'name\'] = \'帅帅的吾延\' # name 为你申请短信模板的参数 content[\'content\'] = \'吾延是真的帅\' # content为你申请短信模板的参数 send_sms("要发送的电话号码", content, "你申请的验证码模板CODE")
自此python3阿里短信服务就完成了, 接下来就是自己去调用了
微信扫码关注公众号,有意想不到的惊喜哦!!!