1. 程式人生 > >使用 Python 傳送簡訊?

使用 Python 傳送簡訊?

上回食行生鮮簽到,我們說到怎麼把簽到結果發出來,於是就找到了 Twilio。

Twilio 是一個位於加利福尼亞的雲通訊(PaaS)公司,致力於為開發者提供通訊模組的 API。由於 Twilio 為試用帳戶提供了免費電話簡訊服務,我們可以在申請需要簡訊驗證的國外免費資源時,使用 Twilio 線上實時收取驗證簡訊。下面,本站就詳細介紹一下 Twilio 的申請及簡訊傳送過程。

註冊及設定

訪問 http://twilio.com/ 並填寫登錄檔單。註冊了新賬戶後,你需要驗證一個手機號碼,簡訊將發給該號碼。還需要做一個人機驗證,證明你是一個人!

註冊成功後,需要新建一個 Project,進入 Project 介面後可以看到有 SID 和 TOKEN 資訊,後面程式碼中會用到:

Project

你需要啟用一個電話號碼,就是讓 Twilio 分配一個,分配成功後,就可以用它來發簡訊了。在 Project 頁面 Phone Numbers 下操作即可:

獲取號碼

想要使用 Twilio 號碼傳送簡訊,需要先驗證收信方的手機號碼。在 Phone Numbers 選項卡中選擇 Verified Caller IDs,進入號碼驗證頁面,選擇使用簡訊驗證。

驗證1

驗證2

驗證3

輸入手機驗證碼,確認後即完成了接收方的手機驗證。

下面,我們就可以使用程式碼來發送簡訊了。

使用

首先,要安裝,很簡單:

pip install twilio

其實 Twilio 官方文件提供了各種程式碼傳送簡訊的方式,如 Python:

# Download the helper library from https://www.twilio.com/docs/python/install
from twilio.rest import Client


# Your Account Sid and Auth Token from twilio.com/console
account_sid = 'AC4e30ba292bcf6fc97ca656aa71b34bc6'
auth_token = 'your_auth_token'
client = Client(account_sid, auth_token)

message = client.messages.create(
                              from_='+15017122661',
                              body='body',
                              to='+15558675310'
                          )

print(message.sid)

這裡,需要 Twilio 提供的試用賬戶包括一個電話號碼,它將作為簡訊的傳送者。還需要兩個資訊:你的賬戶 SID 和 TOKEN,Python 中,這些值將作為你的 Twilio 使用者名稱和密碼。

另外,to 的手機號需要是已經驗證過的!

傳送效果:

傳送效果

由於是試用賬號,所以帶有一些 Twilio 試用字樣。也許在哪裡設定可以去掉,有興趣的可以研究下。

上次食行簽到領積分裡我們說過是不是有辦法提醒簽到成功,這裡就可以操作了,定義一個傳送簡訊的函式,將簽到資訊傳送到指定號碼上就行啦:

def send_sms(text):
    account_sid = 'your_sid'
    auth_token = 'your_auth_token'
    client = Client(account_sid, auth_token)

    message = client.messages.create(
                                from_='your_from_num',
                                body=text,
                                to='your_to_num'
                            )
    print(message.sid)

完整程式碼後臺回覆「食行生鮮」即可獲取。

總結

Twilio 的使用還是很簡單的,另外官方的文件也很贊,都提供了示例程式碼。這裡我們僅僅演示了傳送簡訊的功能,有興趣的還可以試一下接收簡訊、撥打電話等功能。

如果覺得有用,歡迎關注我的微信,一起學習,共同進步,不定期推出贈書活動~

你的關注是對我最大的鼓勵!

最近蒐集到慕課網視訊,視訊內容涵蓋 Python、Java、PHP、前端、小程式、演算法、架構、資料庫等等!關注本公眾號,後臺回覆「慕課網」即可獲取下載地址。