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阿里短信服务就完成了, 接下来就是自己去调用了

ps:已经近半年没有写博客了,经过两年的奋斗,也已经月薪十多k,从那个头发浓密的少年快变成了个秃头的油腻大叔。 本人写的博客喜欢直入主题,不会进行什么互动,也比较反感那些收费或发收款二维码的行为, 来了既是缘分, 所以大家观看后觉得有用的直接评论个好字即可。

python3配置阿里云短信服务的更多相关文章

  1. python3调用阿里云短信服务

    #!/usr/bin/env python#-*- coding:utf-8 -*-#Author:lzd import uuidimport datetimeimport hmacimport ba ...

  2. Zabbix 3.4.3 使用阿里云短信服务进行报警

    目录 一.阿里云短信服务 1.1.首先开通阿里云短信服务 1.2 创建签名 1.3 创建短信模板 1.4 创建发送脚本 二.Zabbix Web 配置 2.1 增加 Media types 2.2 给 ...

  3. php 阿里云短信服务及阿里大鱼实现短信验证码的发送

    一:使用阿里云的短信服务 ① 申请短信签名 ②申请短信模板 ③创建Access Key,获取AccessKeyId 与 AccessKeySecret.(为了安全起见,这里建议使用子用户的Access ...

  4. 阿里云短信服务调用例子-Python

    阿里云短信服务调用例子 阿里云官方文档https://helpcdn.aliyun.com/document_detail/101893.html 首先需要安装阿里云PythonSDK(下面是pyth ...

  5. 移动端获取短信验证码java实现——阿里云短信服务

    需求:移动端输入手机号,获取验证码.点击登录,验证验证码是否输入错误.是否超时等情况,一旦校验通过,将用户数据保存到数据中(业务逻辑). 前提:注册阿里用户,开通短信服务,申请key.秘钥.签名.短信 ...

  6. legend3---PHP使用阿里云短信服务

    legend3---PHP使用阿里云短信服务 一.总结 一句话总结: 使用步骤照官方文档,代码拷贝即可 1.php使用阿里云短信服务的步骤? 入驻阿里云->开通短信服务->获取Access ...

  7. java实现阿里云短信服务发送验证码

    由于做项目的时候遇到了接第三方短信服务,所以记录一下. 一.新建一个maven项目并导入相关依赖 <!--手机发送短信验证码--> <dependency> <group ...

  8. 阿里云短信服务 PHP

    1.开通短信服务后,进入控制器->短信服务 2.点击国内消息,配置签名,模板(这里不作详细介绍) 3.点击进入左侧帮助文档里面,找到PHP sdk,Composer命令直接安装 4.获取acce ...

  9. 阿里云短信服务bug

    接入阿里云短信服务,在springboot中写测试方法,执行到 IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou ...

随机推荐

  1. 读取Core下的appsettings.json的值的时候中文乱码

    这个百度一下一大堆,我就用的这个:然后重新生成一次就好了. 2.有的是更改VS的什么高级保存之类的,我记得之气设置过, 然后就是:这篇文章

  2. Java 中的等待唤醒机制透彻讲解

    线程的状态 首先了解一下什么是线程的状态,线程状态就是当线程被创建(new),并且启动(start)后,它不是一启动就进入了执行状态(run),也不是一直都处于执行状态. 这里说一下Java 的Thr ...

  3. MySql 常用时间函数

    1.date() 提取日期或日期时间表达式的日期部分 select date(create_time) from blog_article; 2.date_format() select date_f ...

  4. Manipulating Data from Oracle Object Storage to ADW with Oracle Data Integrator (ODI)

    0. Introduction and Prerequisites This article presents an overview on how to use Oracle Data Integr ...

  5. 深入理解Java 中SPI 制

    深入理解Java 中SPI 制 概述 SPI(Service Provider Interface),是JDK内置的一种服务提供发现机制,可以用来启用框架扩展和替换组件,主要是被框架的开发人员使用,比 ...

  6. SVN: 在Ecplise管理SVN资源库

    Window->Show View->SVN

  7. CUDA学习(二)之使用clock()函数

    clock()函数是C/C++中的计时函数,相关的数据类型是clock_t,使用clock函数可以计算运行某一段程序所需的时间,如下所示程序计算从10000000逐渐减一直到0所需的时间. #incl ...

  8. SystemVerilog搭建APB_I2C IP 层次化验证平台

    一.前言 近期疫情严重,身为社畜的我只能在家中继续钻研技术了.之前写过一篇关于搭建FIFO验证平台的博文,利用SV的OOP特性对FIFO进行初步验证,但有很多不足之处,比如结构不够规范.验证组件类不独 ...

  9. selenium8中元素定位方式

    Selenium对网页的控制是基于各种前端元素的,在使用过程中,对于元素的定位是基础,只有准去抓取到对应元素才能进行后续的自动化控制,我在这里将对各种元素定位方式进行总结归纳一下. 这里将统一使用百度 ...

  10. FD_WRITE是如何触发的?

    The FD_WRITE network event is handled slightly differently. An FD_WRITE network event is recorded wh ...