利用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 dict remove数组删除(del,pop)
Mar 24 Python
Python将阿拉伯数字转换为罗马数字的方法
Jul 10 Python
python中WSGI是什么,Python应用WSGI详解
Nov 24 Python
python3中pip3安装出错,找不到SSL的解决方式
Dec 12 Python
解决pycharm不能自动补全第三方库的函数和属性问题
Mar 12 Python
Python实现鼠标自动在屏幕上随机移动功能
Mar 14 Python
Python unittest框架操作实例解析
Apr 13 Python
Django的ListView超详细用法(含分页paginate)
May 21 Python
Python HTMLTestRunner测试报告view按钮失效解决方案
May 25 Python
使用K.function()调试keras操作
Jun 17 Python
基于python调用jenkins-cli实现快速发布
Aug 14 Python
Django中session进行权限管理的使用
Jul 09 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 fread()使用技巧
2010/01/22 PHP
PHP strtok()函数的优点分析
2010/03/02 PHP
强烈声明: 不要使用(include/require)_once
2013/06/06 PHP
php中namespace及use用法分析
2016/12/06 PHP
php源码的安装方法和实例
2019/09/26 PHP
JS对象与JSON格式数据相互转换
2012/02/20 Javascript
详细介绍8款超实用JavaScript框架
2013/10/25 Javascript
JQuery each打印JS对象的方法
2013/11/13 Javascript
jQuery在页面加载时动态修改图片尺寸的方法
2015/03/20 Javascript
小议JavaScript中Generator和Iterator的使用
2015/07/29 Javascript
AngularJS延迟加载html template
2016/07/27 Javascript
有关文件上传 非ajax提交 得到后台数据问题
2016/10/12 Javascript
JS高级运动实例分析
2016/12/20 Javascript
jQuery实现弹窗居中效果类似alert()
2017/02/27 Javascript
js实现会跳动的日历效果(完整实例)
2017/10/18 Javascript
利用canvas中toDataURL()将图片转为dataURL(base64)的方法详解
2017/11/20 Javascript
关于vue的语法规则检测报错问题的解决
2018/05/21 Javascript
详解Vue中的scoped及穿透方法
2019/04/18 Javascript
Python操作MongoDB详解及实例
2017/05/18 Python
python实现的二叉树定义与遍历算法实例
2017/06/30 Python
通过Python 获取Android设备信息的轻量级框架
2017/12/18 Python
OpenCV2.3.1+Python2.7.3+Numpy等的配置解析
2018/01/05 Python
python实现简单flappy bird
2018/12/24 Python
Python常用爬虫代码总结方便查询
2019/02/25 Python
如何通过Python实现标签云算法
2019/07/02 Python
Python阶乘求和的代码详解
2020/02/14 Python
python 解决Windows平台上路径有空格的问题
2020/11/10 Python
详解HTML5中的picture元素响应式处理图片
2018/01/03 HTML / CSS
马来西亚与新加坡长途巴士售票网站:BusOnlineTicket.com
2018/11/05 全球购物
委托书样本
2014/04/02 职场文书
超市促销活动总结
2014/07/01 职场文书
华山导游词
2015/02/03 职场文书
大学学生个人总结
2015/02/15 职场文书
html5移动端禁止长按图片保存的实现
2021/04/20 HTML / CSS
Vue3如何理解ref toRef和toRefs的区别
2022/02/18 Vue.js
MySQL高级进阶sql语句总结大全
2022/03/16 MySQL