2016-11-07 33 views
0

我想將發送到我的Twilio號碼的短信正文保存爲我的python程序中的字符串。我找不到有關如何執行此操作的任何文檔。我有一個程序可以讓我知道何時發送新消息,但我不知道如何訪問它。將短信內容作爲字符串存儲在Python中與Twilio

from twilio.rest import TwilioRestClient 
from TwilioPasswords import * 
import time 

while True: 
    client = TwilioRestClient(account_sid, auth_token) 
    messages = client.messages.list() 
    print(len(messages)) 
    time.sleep(5) 

所以每隔5秒鐘,它就會讓我知道我有多少條消息。在messages中,我得到一個數據列表,例如<twilio.rest.resources.messages.Message object at 0x03462DB0>。我想獲得這個信息的正文。我怎樣才能做到這一點?

+0

嘗試'help(messages [0])'來查看'Messages'對象具有哪些屬性。其中之一可能是身體,或者可能有一種方法來獲得身體。 – kindall

+0

@kindall我看到一行說屬性:: body,但我不知道如何使用它。我對python有點新鮮。我在這裏上傳完整的輸出:http://pastebin.com/ExyVRjHi –

+0

爲了記錄,'.'是你如何訪問對象的屬性(如'client.messages.list()'中所見)。就像吉卜賽人所表明的那樣,你使用'for'循環遍歷消息,然後獲取每個消息的'body'屬性。 – kindall

回答

0
for message in messages: 
    print message.body 
0

Twilio開發人員傳道這裏。

我注意到您正在輪詢Twilio API每5秒一次以檢索新郵件。雖然這樣做有效,但有一種更好的方式可以從Twilio接收消息。

您可以設置一個URL,Twilio每次向Twilio號碼發送新消息時都會向HTTP發送一個HTTP請求,稱爲webhook。然後您可以從該請求的參數中提取消息正文。

關於how to receive SMS messages using Python and Flask有一個偉大的指南,我建議你讀一讀。