利用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调用SQLPlus来操作和解析Oracle数据库的方法
Apr 09 Python
用matplotlib画等高线图详解
Dec 14 Python
python贪婪匹配以及多行匹配的实例讲解
Apr 19 Python
python+splinter实现12306网站刷票并自动购票流程
Sep 25 Python
利用python循环创建多个文件的方法
Oct 25 Python
CentOS下Python3的安装及创建虚拟环境的方法
Nov 28 Python
使用Python开发SQLite代理服务器的方法
Dec 07 Python
Python地图绘制实操详解
Mar 04 Python
linux环境中没有网络怎么下载python
Jul 07 Python
安装docker-compose的两种最简方法
Jul 30 Python
numpy:np.newaxis 实现将行向量转换成列向量
Nov 30 Python
Python3中的tuple函数知识点讲解
Jan 03 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下利用curl判断远程文件是否存在的实现代码
2011/10/08 PHP
smarty半小时快速上手入门教程
2014/10/27 PHP
PHP实现简单注册登录系统
2020/12/28 PHP
兼容IE、FireFox、Chrome等浏览器的xml处理函数js代码
2011/11/30 Javascript
基于jquery的文章中所有图片width大小批量设置方法
2013/08/01 Javascript
用js读、写、删除Cookie代码续篇
2014/12/03 Javascript
jQuery中siblings()方法用法实例
2015/01/08 Javascript
浅谈jquery点击label触发2次的问题
2016/06/12 Javascript
谈谈第三方App接入微信登录 解读
2016/12/27 Javascript
jQuery布局组件EasyUI Layout使用方法详解
2017/02/28 Javascript
BootStrap注意事项小结(五)表单
2017/03/10 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(上)
2018/04/18 Javascript
JavaScript常用截取字符串的三种方式用法区别实例解析
2018/05/15 Javascript
微信小程序 wx:for遍历循环使用实例解析
2019/09/09 Javascript
JS+DIV实现拖动效果
2020/02/11 Javascript
Vue的props父传子的示例代码
2020/05/20 Javascript
使用jQuery实现购物车
2020/10/29 jQuery
[33:42]LGD vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
在Python的Flask框架中使用日期和时间的教程
2015/04/21 Python
python执行子进程实现进程间通信的方法
2015/06/02 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
TensorFlow实现随机训练和批量训练的方法
2018/04/28 Python
python粘包问题及socket套接字编程详解
2019/06/29 Python
Python实现分数序列求和
2020/02/25 Python
Python3+selenium配置常见报错解决方案
2020/08/28 Python
Canvas系列之滤镜效果
2019/02/12 HTML / CSS
什么是聚集索引和非聚集索引
2012/01/17 面试题
为什么Runtime.exec(“ls”)没有任何输出?
2014/10/03 面试题
师范院校学生自荐信范文
2013/12/27 职场文书
1000字打架检讨书
2014/11/03 职场文书
学习型家庭事迹材料
2014/12/20 职场文书
2016春季幼儿园大班开学寄语
2015/12/03 职场文书
如何制定一份可行的计划!
2019/06/21 职场文书
读《皮囊》有感:理解是对他人的最大的善举
2019/11/14 职场文书
阿里云服务器部署mongodb的详细过程
2021/09/04 MongoDB
java协程框架quasar和kotlin中的协程对比分析
2022/02/24 Java/Android