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. .net core 3.1 DbFirst mysql

    这是一套完全配置正确的方式 创建项目此步骤省略 打开nuget 搜索 Pomelo.EntityFrameworkCore.MySql 添加完毕该引用之后nuget 搜索 Microsoft.Enti ...

  2. ssm项目中中文字符乱码

    昨天给同学改一个错,在SSM项目中,表单输入的String类型中,中文字符值,总是乱码,在控制器层获取的数据就开始乱码,先后进行了如下排查: web.xml中配置设置字符编码的监听器(过滤器), js ...

  3. C++ 一篇搞懂多态的实现原理

    虚函数和多态 01 虚函数 在类的定义中,前面有 virtual 关键字的成员函数称为虚函数: virtual 关键字只用在类定义里的函数声明中,写函数体时不用. class Base { virtu ...

  4. 基于Flask框架搭建视频网站的学习日志(一)

    ------------恢复内容开始------------ 基于Flask框架搭建视频网站的学习日志(一)2020/02/01 一.Flask环境搭建 创建虚拟环境 初次搭建虚拟环境 搭建完虚拟环境 ...

  5. 关于Queries_per_sec 性能计数器

    [问题描述] Queries_per_sec (QPS)是数据库两个比较重要的性能计数器指标.我们经常要求开发告知这个参数,以评估数据库的一个负载情况.下面的这段代码连上服务器,做一个简单的查询: u ...

  6. es6的promise用法详解

    es6的promise用法详解 promise 原理 promise是es6的异步编程解决方案, 是es6封装好的对象: 一个promise有三种状态:Pending(进行中).Resolved(已完 ...

  7. Codeforces Round #617 (Div. 3)F. Berland Beauty

    题意: 给一棵树,边权未知,现在给m组约束,每组约束给出从u到v路径中的最小值,现在让你给出一组边权,使得符合之前的约束,不能给出输出-1 思路: 因为n较小,对于每组约束我们可以直接暴力修改路径上的 ...

  8. Redis入门,Jedis和常用命令

    一.Redis简介 1.关于关系型数据库和nosql数据库 关系型数据库是基于关系表的数据库,最终会将数据持久化到磁盘上,而nosql数据     库是基于特殊的结构,并将数据存储到内存的数据库.从性 ...

  9. 保存网页内容到excel

    from selenium import webdriverfrom time import sleepfrom selenium.common.exceptions import NoSuchEle ...

  10. Docker深入浅出系列 | 容器初体验

    目录 Docker深入浅出系列 | 容器初体验 教程目标 预备工作 容器与虚拟化技术 什么是Docker 为什么要用Docker 事例 什么是容器镜像和容器 容器与虚拟机的区别 Vagrant与Doc ...