利用python实现短信和电话提醒功能的例子


Posted in Python onAugust 08, 2019

有时候,我们需要程序帮我们自动检测某些事件的发生

这个需求是广泛存在的

因此,这里整理了利用python实现短信和电话提醒功能的方法

主要需要完成以下4个步骤:

- 安装核心库:twilio

- 注册账号及配置

- 发送短信示例

- 电话提醒示例

twilio

twilio是我们需要的核心库,我们要利用其提供的api完成所需的功能

首先安装twilio模块(我使用的是python3)

pip3 install twilio

注册账号及配置

首先访问https://www.twilio.com/并注册一个账号。

注册了新账户后,你需要根据你的需求建立一个项目

我们想要实现短信提醒或电话提醒功能

因此我们选择创建项目Programmable SMS或Programmable Voice即可

项目创建后,你可以看到账户的SID和token

这两个信息非常重要,在调用api时需要使用

随后,你需要给项目申请一个手机号码,短信和电话将会从这个电话发送过来。

在这之后,还需要验证自己的手机号码,否则你无法成功收到短信提醒。

最后,记得将你手机号所属国家添加到项目中,验证中国为服务接收国家。

看起来有点繁琐,再加上twilio的官网响应有些慢,所以需要耐心的完成以上步骤。

另外,作为试用账户,你无需担心话费的问题,每个项目有$15的试用话费。如果好用,再购买即可,一般情况下免费的就够用了。

发送短信示例

完成以上工作后,便可调用api了。

发送短信的api非常简单,代码如下

from twilio.rest import TwilioRestClient
#填写你在twilio的账号
account = "ACXXXXXXXXXXXXXXXXX"
#填入你在twilio的app token
token = "YYYYYYYYYYYYYYYYYY"
#填入你申请的号码
twilioNumber = "00000000"
#填入你验证的手机号
myNumber = "111111111"
#填入你想发送的信息
message = 'abcdefg'

client = TwilioRestClient(account, token)

client.messages.create(to=mynumber, from_=twilioNumber, body=message)

print(call.sid)

注意:短信内容必须为英文

这是个蛮大的坑,官网并没有提示,我鼓捣了好久才发现的

电话提醒示例

电话提醒的api用法是类似的,但要准备一个类似于xml的文件,并向api提供该文件的可访问url

该文件用于指定来电的具体内容,构造方法详见官网

这里提供一个示例,代码如下

from twilio.rest import TwilioRestClient
#填写你在twilio的账号
account = "ACXXXXXXXXXXXXXXXXX"
#填入你在twilio的app token
token = "YYYYYYYYYYYYYYYYYY"
#填入你申请的号码
twilioNumber = "00000000"
#填入你验证的手机号
myNumber = "111111111"

client = TwilioRestClient(account, token)

client.calls.create(url='https://demo.twilio.com/welcome/voice/', to=myNumber , from_=twilioNumber)

print(call.sid)

上面的代码会向你的手机拨打一通电话

电话的内容是url所对应的文件制定的,是twilio官网的一个示例文件

你可以通过构建自己的文件让来电朗读制定的内容。

以上这篇利用python实现短信和电话提醒功能的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python发送伪造的arp请求
Jan 09 Python
numpy自动生成数组详解
Dec 15 Python
python使用tensorflow保存、加载和使用模型的方法
Jan 31 Python
ubuntu安装mysql pycharm sublime
Feb 20 Python
python简单操作excle的方法
Sep 12 Python
Python threading的使用方法解析
Aug 28 Python
使用Python脚本zabbix自定义key监控oracle连接状态
Aug 28 Python
Python面向对象原理与基础语法详解
Jan 02 Python
VScode连接远程服务器上的jupyter notebook的实现
Apr 23 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
Jul 18 Python
Python pip 常用命令汇总
Oct 19 Python
pytorch 预训练模型读取修改相关参数的填坑问题
Jun 05 Python
twilio python自动拨打电话,播放自定义mp3音频的方法
Aug 08 #Python
Python 使用matplotlib模块模拟掷骰子
Aug 08 #Python
Pycharm远程调试原理及具体配置详解
Aug 08 #Python
Python IDE Pycharm中的快捷键列表用法
Aug 08 #Python
python多线程与多进程及其区别详解
Aug 08 #Python
python PIL和CV对 图片的读取,显示,裁剪,保存实现方法
Aug 07 #Python
python实现对图片进行旋转,放缩,裁剪的功能
Aug 07 #Python
You might like
深入理解curl类,可用于模拟get,post和curl下载
2013/06/08 PHP
PHP7修改的函数
2021/03/09 PHP
通过JS 获取Mouse Position(鼠标坐标)的代码
2009/09/21 Javascript
跟着Jquery API学Jquery之一 选择器
2010/04/07 Javascript
javascript定义变量时带var与不带var的区别分析
2015/01/12 Javascript
JS获取数组最大值、最小值及长度的方法
2015/11/24 Javascript
Jquery中request和request.form和request.querystring的区别
2015/11/26 Javascript
JavaScript实现的MD5算法完整实例
2016/02/02 Javascript
AngularJS实用开发技巧(推荐)
2016/07/13 Javascript
JavaScript将DOM事件处理程序封装为event.js 出现的低级错误问题
2016/08/03 Javascript
浅谈DOM的操作以及性能优化问题-重绘重排
2017/01/08 Javascript
vue.js指令和组件详细介绍及实例
2017/04/06 Javascript
Node.JS 循环递归复制文件夹目录及其子文件夹下的所有文件
2017/09/18 Javascript
原生js实现移动端触摸轮播的示例代码
2017/12/22 Javascript
解决vue build打包之后首页白屏的问题
2018/03/06 Javascript
vue完成项目后,打包成静态文件的方法
2018/09/03 Javascript
JavaScript常用工具方法封装
2019/02/12 Javascript
使用layer模态框给新页面传值的方法
2019/09/27 Javascript
javascript刷新父页面方法汇总详解
2019/10/10 Javascript
[02:28]DOTA2英雄基础教程 狼人
2013/12/23 DOTA
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
2015/10/18 Python
微信跳一跳python自动代码解读1.0
2018/01/12 Python
Python文件如何引入?详解引入Python文件步骤
2018/12/10 Python
Django 大文件下载实现过程解析
2019/08/01 Python
Python Json数据文件操作原理解析
2020/05/09 Python
Python中zip函数如何使用
2020/06/04 Python
Gap加拿大官网:Gap Canada
2017/08/24 全球购物
SQL中where和having的区别
2012/06/17 面试题
大学军训感言400字
2014/03/11 职场文书
企业趣味活动方案
2014/08/21 职场文书
2014年纳税评估工作总结
2014/12/23 职场文书
先进党组织事迹材料
2014/12/26 职场文书
2015教师个人工作总结范文
2015/03/31 职场文书
Python+uiautomator2实现自动刷抖音视频功能
2021/04/29 Python
「回转企鹅罐」10周年纪念展「輪るピングドラム展」海报公开
2022/03/22 日漫
python模拟浏览器 使用selenium进入好友QQ空间并留言
2022/04/12 Python