利用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实现跨文件全局变量的方法
Jul 07 Python
python3生成随机数实例
Oct 20 Python
Python中列表、字典、元组、集合数据结构整理
Nov 20 Python
解决Python 遍历字典时删除元素报异常的问题
Sep 11 Python
简单的python后台管理程序
Apr 13 Python
浅析python中的迭代与迭代对象
Oct 08 Python
使用python采集脚本之家电子书资源并自动下载到本地的实例脚本
Oct 23 Python
Django实现列表页商品数据返回教程
Apr 03 Python
如何将tensorflow训练好的模型移植到Android (MNIST手写数字识别)
Apr 22 Python
解决运行出现'dict' object has no attribute 'has_key'问题
Jul 15 Python
Pycharm学生免费专业版安装教程的方法步骤
Sep 24 Python
python高温预警数据获取实例
Jul 23 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
台湾中原大学php教程孙仲岳主讲
2008/01/07 PHP
20个PHP常用类库小结
2011/09/11 PHP
php.ini 配置文件的深入解析
2013/06/17 PHP
php结合mysql与mysqli扩展处理事务的方法
2016/06/29 PHP
PHP常见过waf webshell以及最简单的检测方法
2019/05/21 PHP
Laravel框架中集成MongoDB和使用详解
2019/10/17 PHP
js获取当前月的第一天和最后一天的小例子
2013/11/18 Javascript
微信小程序-拍照或选择图片并上传文件
2017/01/06 Javascript
使用js获取伪元素的content实例
2017/10/24 Javascript
AngularJS实现controller控制器间共享数据的方法示例
2017/10/30 Javascript
Angular父组件调用子组件的方法
2018/04/02 Javascript
使用webpack3.0配置webpack-dev-server教程
2018/05/29 Javascript
js+html5实现手机九宫格密码解锁功能
2018/07/30 Javascript
手把手教你写一个微信小程序(推荐)
2018/10/17 Javascript
在layui.use 中自定义 function 的正确方法
2019/09/16 Javascript
[44:40]KG vs LGD 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
python 利用pywifi模块实现连接网络破解wifi密码实时监控网络
2019/09/16 Python
基于python的selenium两种文件上传操作实现详解
2019/09/19 Python
python的mysql数据库建立表与插入数据操作示例
2019/09/30 Python
Python 脚本的三种执行方式小结
2019/12/21 Python
Java多线程实现四种方式原理详解
2020/06/02 Python
CSS3实现swap交换动画
2016/01/19 HTML / CSS
利用HTML5+CSS3实现3D转换效果实例详解
2017/05/02 HTML / CSS
关于 HTML5 的七个传说小结
2012/04/12 HTML / CSS
详解HTML5中表单验证的8种方法介绍
2016/12/19 HTML / CSS
档案室主任岗位职责
2014/02/12 职场文书
协议书的格式
2014/04/23 职场文书
知识改变命运演讲稿
2014/05/21 职场文书
2015财务年度工作总结范文
2015/05/04 职场文书
房屋维修申请报告
2015/05/18 职场文书
同意落户证明
2015/06/19 职场文书
物业公司管理制度
2015/08/05 职场文书
学术会议开幕词
2016/03/03 职场文书
解决jupyter notebook启动后没有token的坑
2021/04/24 Python
零基础学java之循环语句的使用
2022/04/10 Java/Android
Android存储中最基本的文件存储方式
2022/04/30 Java/Android