16.7 项目:“只给我发短信”模块

最常用你的程序发短信的人可能就是你。当你远离计算机时,短信是通知你自


己的好方式。如果你已经用程序自动化了一个无聊的任务,它需要运行几小时,你可以在它完成时,让它用短信通知你。或者可以定期运行某个程序,它有时需要与你联系,例如天气检查程序,用短信提醒你带伞。
举一个简单的例子,下面是一个 Python  小程序,包含了 textmyself()函数,它将传入的字符串参数作为短信发出。打开一个新的文件编辑器窗口,输入以下代码,用自己的信息替换帐户 
SID,认证标志和电话号码。将它保存为 textMyself.py。

#!  python3
#  textMyself.py  -  Defines  the  textmyself()  function  that  texts  a  message #  passed  to  
it  as  a  string.

#  Preset  values:
accountSID  =  'ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' authToken  =  
'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' myNumber  =  '+15559998888'
twilioNumber  =  '+15552225678'

from  twilio.rest  import  TwilioRestClient

➊  def  textmyself(message):
➋            twilioCli  =  TwilioRestClient(accountSID,  authToken)
➌            twilioCli.messages.create(body=message,  from_=twilioNumber,  to=myNumber)

该程序保存了账户的 SID、认证标志、发送号码及接收号码。然后它定义了 textmyself(),接收参数➊,创建 TwilioRestClient  
对象➋,并用你传入的消息调用 create()➌。
如果你想让其他程序使用 textmyself()函数,只需将 textMyself.py 文件和 Python
的可执行文件放在同一个文件夹中( Windows  上是 C:\Python34,OS  X  上是
/usr/local/lib/python3.4,Linux 上是/usr/bin/python3)。现在,你可以在其他程序中使用该函数。只要想在程序中发短信给你,就添加以下代码:
import  textmyself
textmyself.textmyself('The  boring  task  is  finished.')

注册Twilio 和编写短信代码只要做一次。在此之后,从任何其他程序中发短信,只要两行代码。

小结
通过因特网和手机网络,我们用几十种不同的方式相互通信,但以电子邮件和


短信为主。你的程序可以通过这些渠道沟通,这给它们带来强大的新通知功能。甚至可以编程运行在不同的计算机上,相互直接通过电子邮件能信,一个程序用 SMTP发送电子邮件,另一个用 IMAP 收取。
Python 的 smtplib 提供了一些函数,利用 SMTP,通过电子邮件提供商的 SMTP

服务器发送电子邮件。同样,第三方的 imapclient  和 pyzmail  模块让你访问 IMAP服务器,并取回发送给你的电子邮件。虽然 IMAP 比 SMTP 
复杂一些,但它也相当强大,允许你搜索特定电子邮件、下载它们、解析它们,提取主题和正文作为字符串值。
短信与电子邮件有点不同,因为它不像电子邮件,发送短信不仅需要互联网连接。好在,像Twilio 
这样的服务提供了模块,允许你通过程序发送短信。一旦通过了初始设置过程,就能够只用几行代码来发送短信。掌握了这些模块,就可以针对特定的情况编程,在这些情况下发送通知或提醒。现在,你的程序将超越运行它们的
计算机!


习题
1.发送电子邮件的协议是什么?检查和接收电子邮件的协议是什么?
2.必须调用哪 4 个 smtplib 函数/方法,才能登录到SMTP 服务器?
3.必须调用哪两个 imapclient 函数/方法,才能登录到IMAP 服务器?
4.传递给 mapObj.search()什么样的参数?
5.如果你的代码收到了错误消息,got more than 10000 bytes,你该怎么做? 6.imapclient 模块负责连接到 IMAP 服务器和查找电子邮件。什么模块负责读

取 imapclient 收集的电子邮件?
7.在发送短信之前,你需要从Twilio 得到哪 3 种信息?

实践项目
作为实践,编程完成以下任务。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大飞哥软件自习室

希望支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值