前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python项目48-插播短信接口(使劲撸)

Python项目48-插播短信接口(使劲撸)

作者头像
DriverZeng
发布2022-09-26 13:55:26
1.6K0
发布2022-09-26 13:55:26
举报
文章被收录于专栏:Linux云计算及前后端开发

-曾老湿, 江湖人称曾老大。


-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。


腾讯云短信接口开通


开通应用

腾讯云:TP

腾讯云短信:TP

需要创建签名,但是创建签名需要各种信息提交,所以我们需要先申请一个微信公众号


注册微信公众号

微信公众号:TP

注册好之后 ,将公众号页面截图


设置签名


创建正文模板

短信接口的使用

腾讯python SDK文档:TP


安装腾讯云短信模块

代码语言:javascript
复制
(luffy) bash-3.2$ pip install qcloudsms_py

封装发送短信模块

因为这个属于第三方的 ,所以我们在libs下面创建一个包,包,包,包,不是目录,是包:txsms,然后在包目录下创建一个settings.py文件和sms.py

libs/txsms/settings.py

代码语言:javascript
复制
# 短信应用 SDK AppID - SDK AppID 以1400开头
APP_ID = ...
# 短信应用 SDK AppKey
APP_KEY = "..."
# 短信模板ID,需要在短信控制台中申请(正文模板的ID)
TEMPLATE_ID = ...
# 签名 - 是`签名内容`,而不是`签名ID`
SMS_SIGN = "深入浅出DRZ"
# 电话前缀
MOBILE_PREFIX = 86

libs/txsms/sms.py

代码语言:javascript
复制
from qcloudsms_py import SmsSingleSender
from utils.logging import logger
from .settings import *
## 提供验证码的功能
import random
import ssl

## ssl证书,如果不加,会报错...
ssl._create_default_https_context = ssl._create_unverified_context


def get_code():
    code = ''
    for i in range(4):
        code += str(random.randint(0, 9))

    return code


## 发送短信
# 1.短信发送者
sender = SmsSingleSender(APP_ID, APP_KEY)


def send_sms(mobile, code, exp):
    try:
        ## 发送短信
        response = sender.send_with_param(MOBILE_PREFIX, mobile, TEMPLATE_ID, (code, exp), sign=SMS_SIGN, extend="",
                                          ext="")

        ## 成功
        if response and response['result'] == 0:
            return True

        ## 失败
        logger.warning('%s - %s' % ('短信发送失败', response['result']))
    except Exception as e:
        ## 异常
        logger.warning('%s - %s' % ('短信发送失败', e))

    return False

libs/txsms/__init__.py

代码语言:javascript
复制
## 包对外提供的功能方法
from .sms import get_code, send_sms

测试短信发送

代码语言:javascript
复制
from libs import txsms

## 产生验证码
code = txsms.get_code()
print(code)
## 发送短信
print(txsms.send_sms('13051756150', code, 5))

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-04-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 腾讯云短信接口开通
  • 短信接口的使用
相关产品与服务
短信
腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档