今天跟大家分享的主题是利用python库twilio来免费发送短信。

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:101677771

先放一张成品图

代码放在了本文最后的地址中,欢迎有需要的自取,有任何也可以在评论或者后台直接私聊我。

正文

眼尖的小伙伴已经发现了上面的短信的前缀显示这个短信来自于一个叫Twilio的免费的账户,今天我们用到的库就是twilio,既然是免费的账户,那么肯定是有一些限制的,这个会在后面提到。

另外要注意的是这个网站从国内访问的时候,可能会因为一些你懂得原因没法访问

1.Twilio

Twilio是一个做成开放插件的电话跟踪服务(call-tracking service)。美国当地时间2016年6月23日,云通讯公司Twilio在纽约证券交易所上市(来自于百度百科)

2. 安装

官方文档地址:https://www.twilio.com/docs/libraries/python

同时官方还提供对以下语言的支持

可以看到,还是很丰富的。

最简单的方式就是通过pip,执行如下命令:

Python

1

pip install twilio

3.注册账号

安装好库以后,就需要到官方的网页上进行注册了。

进入官网:https://www.twilio.com

然后进入注册页面

接着通过了人机认证以后,就会对你的手机号码进行认证,这个就不发图片了。

4. 进入console

注册好了以后,就可以进入我们自己的面板了

图中箭头所指的两个参数是我们代码中需要的, 可以把两个都复制一下;

既然是发短信,那么肯定是有一个接收者和一个发送者,发送者的号码可不是我们自己刚刚填的号码,而且twilio给我们分配的一个号码,因为我也是前段时间搞好了,所以不太记得这个号码是不是一开始进去就有的了,如果没有的话,那么就点击Get Stared。

现在我们点击Manage Numbers

这个时候就可以看到我们的号码了,这是重点,记下来

5. 写代码

根据文档的内容,我们编写了下面的代码:

Python

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

#!/usr/bin/env python

# -*- coding: utf-8 -*-

# @Author  : ShiMeng

# @File    : send_sms.py

# @Software: PyCharm

from twilio.rest import Client

# Your Account SID from twilio.com/console

account_sid = "your account sid"

# Your Auth Token from twilio.com/console

auth_token  = "your token"

client = Client(account_sid, auth_token)

message = client.messages.create(

# 这里中国的号码前面需要加86

to="+接收者的号码",

from_="+twilio给你的号码 ",

body="Hello from Python!")

print(message.sid)

然后执行程序,你应该会碰到下面的错误

可以从报错信息中明显的看到,提示我们说这个号码没有验证,我们可以到验证的网址上验证一下,也可以购买一个高级别的账号来给未验证的号码发送信息。

而这个就是我一开始提到的免费账号的限制,在这个限制下面如果你想发送信息给一个接收者,这个接收者的号码必须通过验证,语音验证或者短信验证都可以。如果你是想大批量的发那种垃圾信息,那么你不用往下面看了。下面我们就来对号码进行验证。

6. 验证号码

验证网址:https://www.twilio.com/console/phone-numbers/verified

7.重新执行代码

这个时候重新执行我们的代码,没有报错的话,接收者就应该收到你的消息了,就像我一开始放的成品图一样。

但是,在我们发送的信息前面,有一段前缀,我查了一下官方的文档,说这个免费的账户,这个前缀是去不掉的。。。。。。

8.查看用量

在面板中,点击Usage即可看到我们的用量, 如下图所示

可以看到我们的用量以及花费,这个花费是不需要我们真正的付钱的,官方的解释是:

9.打电话

打电话的代码也很简单

Python

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

# Download the Python helper library from twilio.com/docs/python/install

from twilio.rest import Client

# Your Account Sid and Auth Token from twilio.com/user/account

account_sid = "AC8a9ba33072b6a05f2b81126e3e6609b7"

auth_token = "f0150d603c1886d93b9d45ff15d84f24"

client = Client(account_sid, auth_token)

call = client.calls.create(

to="+接收者号码",

from_="+你的twilio号码",

url="http://demo.twilio.com/docs/voice.xml",

method="GET",

status_callback="https://www.myapp.com/events",

status_callback_method="POST",

status_callback_event=["initiated", "ringing", "answered", "completed"]

)

print(call.sid)

执行程序后,电话也可以接通,但是里面的人会提示你升级账号。。。。。

总结

好了,到这里我们就可以免费的发送短信了。

通过这个库,我们可以:

(1)对线上或者线下后台跑的程序进行监控,并及时发送短信报警

(2)结合树莓派玩一下,可以实现对超多场景的监测

代码被放在了这里:https://github.com/xiaosimao/wx_code/tree/master/send_sms

Python的模块千奇百怪,居然有自动发短信的模块?相关推荐

  1. Python自动发短信给自己手机

    Python自动发短信给自己手机 国外有一家公司Twilio推出了一项自动发送短信的服务,只需要在官网上注册并且获取权限即可,这在我们做服务器监控或者其他监控内容时有很大的作用,下面我直接提出代码. ...

  2. python 大智慧 dll 下单_大智慧永久免费自动交易和自动发短信DLL

    好股票软件下载网(www.goodgupiao.com)提示:您正在下载的是:大智慧永久免费自动交易和自动发短信DLL 本地电脑自动交易,请将DLL文件夹下的文件复制到大智慧根目录下. 本地电脑自动交 ...

  3. 利用飞信自动发短信脚本

    利用飞信给自己发短信的shell脚本 利用飞信给自己发短信的shell脚本翻译自一个python脚本因为openwrt要装python太大了.所以用了两天非工作时间 翻译成了 shell脚本 .测试可 ...

  4. php自动发短信,用PHP怎么实现手机短信发送

    用PHP怎么实现手机短信发送 可以的,如果是在linux下,可以结合crontab定时任务实现,如果是使用windows可以安装win32service这个扩展实现如果我的回答没能帮助您,请继续追问. ...

  5. Python自动发短信

    摘要:最近开发微信自动回复小程序,需要用到一个好友发消息自动短信通知我的功能,因此写了这个程序.主要使用Twilio网站提供的短信功能. 实现起来也是非常方便的. 作者博客地址:http://www. ...

  6. python定时发送信息_Python为我定时发短信

    Hello,小伙伴们大家好,好久不见了.2019年忙着录制新课,加上家里人生病住院需要照顾,公众号的发布频率只能降低了. 今天我试试来用Python发定时短信.实现这个功能需要借助安卓运行Python ...

  7. 山寨机java自动发短信_恶搞短信附带代码 山寨手机最容易中招黑屏

    恶搞短信附带代码 山寨手机最容易中招黑屏 2012-03-27 13:49:34  来源:钱江晚报 扫码可以: 1.在手机上浏览 2.分享给微信好友或朋友圈 摘要: 用一条短信就能让你手机" ...

  8. 寄件管理自动发短信教程

    在寄递重要文件.合同.发票等等物品的时候,给收件人发条消息,知会其物品已寄出,几乎成了不成文的规定.有些人可能会说,这条知会信息没有发出去的话,又能怎么样? 当快递安全送到的话,顶多就是遇上不好相与的 ...

  9. 自动发短信html,定时发送短信.html

    Document input { outline: none; } 发送 var oInput = document.querySelector('#inp'); var oBtn = documen ...

最新文章

  1. ASP.Net后台 实现先弹出对话框,再跳转到另一个网页的实现方法
  2. 中国一次性塑料餐具市场运营动态及供需态势分析报告2022年版
  3. flask开发问题小记
  4. raft2020年更新_ECCV2020最佳论文解读之递归全对场变换(RAFT)光流计算模型
  5. 数字和数字根的总和_使用8086微处理器查找8位数字的数字总和
  6. Exalogic Elastic Cloud
  7. 面试鹅厂,我被虐的体无完肤。。。
  8. Linux RedHat 5.2 构建PostFix邮件服务器
  9. Ubuntu 屏幕录像
  10. 电脑每次开机都出现check file system on:C 的解决办法
  11. 软件及系统开发项目可行性分析报告-样例
  12. 论文写作——1 论文的框架与introduction段落安排
  13. 【iOS】设置背景渐变色
  14. RabbitMQ详解以及spring对RabbitMQ的集成(附带部分源码解读)
  15. 计算机如何修改用户名和密码忘了怎么办,电脑用户名密码忘记怎么办
  16. python如何不以科学计数法形式输出小数
  17. 阿里云网站备案申请被驳回的问题解答汇总
  18. python富翁与陌生人编程_GitHub近10万星:印度小哥用Python和Java实现所有AI算法
  19. 枚举算法实践3-Lucky number c++
  20. 不用写算法的机器视觉外观检测软件

热门文章

  1. linux-索引1909
  2. jquey-整屏滚动的制作过程
  3. PHPmyadmin 和 MySQL 的配置笔记
  4. ZJU cluster
  5. Flash动画中按钮的八个动作
  6. Tomcat集群实现源码级别剖析
  7. html5移动开发入门知识
  8. windowXP 任务计划无法启动 错误代码:0X80041315
  9. Ruby on Rails 和 J2EE:两者能否共存?
  10. DevOps实战 —— 如何高效地远程部署?自动化运维利器 Fabric 教程