Python调用腾讯云短信服务发送手机短信

作者:R.zb 时间:2021-10-07 16:55:38 

1、准备工作

pip install qcloudsms_py

1.注册腾讯云账号

2.在产品列表内找到短信,在短信内添加应用

Python调用腾讯云短信服务发送手机短信

3.获取对应的SDK AppID 和 App Key

Python调用腾讯云短信服务发送手机短信

4.配置短信内容

注:需先申请“短信签名”和“短信正文”,按照要求填写申请即可,腾讯云的审核效率还是很快的,一般在1-2个小时内就会有结果

Python调用腾讯云短信服务发送手机短信

注:腾讯云的短信服务现在好像也不免费了,之前每个月还会赠送100条免费短信额度。总结:准备工作准备内容:SDK AppID、App Key、应用签名、短信正文模板ID

2、代码实现

# -*- coding: utf-8 -*-
"""
@author: rzb
@software: PyCharm
@file: sms_qcloud.py
@time: 2019/8/21 11:54
"""
from qcloudsms_py import SmsSingleSender
from qcloudsms_py.httpclient import HTTPError
import random
# 使用腾讯云发送手机6位随机验证码
class TestQCloudSMS(object):
   def __init__(self, phone_num):
       self.appid = ****  # 准备工作中的SDK AppID,类型:int
       self.appkey = ****   # 准备工作中的App Key,类型:str
       self.phone_num = phone_num
       self.sign = 'rzbbzr公众号'  # 准备工作中的应用签名,类型:str
   def make_code(self):
       """
       :return: code 6位随机数
       """
       code = ''
       for item in range(6):
           code += str(random.randint(0, 9))
       return code
   def send_msg(self):
       ssender = SmsSingleSender(self.appid, self.appkey)
       try:
           # parms参数类型为list
           rzb = ssender.send_with_param(86, self.phone_num, 短信正文模板ID, [self.make_code()],
                                         sign=self.sign, extend='', ext='')
           print(rzb)
       except HTTPError as http:
           print("HTTPError", http)
       except Exception as e:
           print(e)
if __name__ == '__main__':
   phone_num = ['188********', '185********', '176********']
   sendmsg = TestQCloudSMS(random.choices(phone_num)[0])   # 需传入发送短信的手机号,单发
   sendmsg.send_msg()

3、拓展

官方文档中心里面给出了多种API的详细使用,有兴趣的同学可以去看看

腾讯云文档中心:https://cloud.tencent.com/document/product/382/5976

Python调用腾讯云短信服务发送手机短信

4、闲聊

可用于但不限于以下用途

  • 脚本触发/告警

  • 事务提醒

  • 追番更新、电视剧更新等

  • ……

来源:https://blog.csdn.net/qq_21238607/article/details/102460995

标签:Python,腾讯云,短信发送
0
投稿

猜你喜欢

  • Python缩进和冒号详解

    2023-04-21 16:22:11
  • Appium+Python自动化测试之运行App程序示例

    2023-07-29 01:54:20
  • Python脚本操作Excel实现批量替换功能

    2023-06-15 16:37:57
  • 解决pytorch报错:AssertionError: Invalid device id的问题

    2021-05-15 16:13:42
  • encodeURIComponent用法UrlEncode与URLEncode.encode()

    2009-05-11 12:40:00
  • PHP安全的URL字符串base64编码和解码

    2023-09-06 22:04:45
  • python选择排序算法实例总结

    2023-08-29 06:58:28
  • TensorFlow变量管理详解

    2023-11-23 07:11:18
  • python生成可执行exe控制Microsip自动填写号码并拨打功能

    2023-08-11 04:51:00
  • 利用pyshp包给shapefile文件添加字段的实例

    2023-08-12 15:48:38
  • linecache模块加载和缓存文件内容详解

    2022-09-23 20:00:45
  • 讲述SQL Server数据转换服务小妙招

    2010-07-26 14:43:00
  • 基于python分享一款地理数据可视化神器keplergl

    2023-09-27 20:54:05
  • PHP实现异步定时多任务消息推送

    2023-05-25 09:51:29
  • python内置函数:lambda、map、filter简单介绍

    2021-06-06 02:06:01
  • Python PyWebIO实现网页版数据查询器

    2023-07-11 20:01:03
  • 对YOLOv3模型调用时候的python接口详解

    2023-05-31 00:58:57
  • Python参数解析器configparser简介

    2021-04-22 02:23:31
  • Python基于回溯法解决01背包问题实例

    2023-08-04 01:09:04
  • 调整Jupyter notebook的启动目录操作

    2022-04-02 19:40:58
  • asp之家 网络编程 m.aspxhome.com