我正在尝试在给定日期之前从twilio消息列表中检索SMS消息。当我要求给定日期的等号时,它会起作用(它将在2019年2月2日返回所有短信:
timestamp = datetime.datetime(2019, 2, 15, 0, 0,0)
client = Client(account_sid, auth_token)
messages = client.messages.list(
date_sent=timestamp
)
但是,如果我尝试使用:
date_sent<=timestamp
或
date_sent>=timestamp
我得到一个错误。
global name 'date_sent' is not defined
文档似乎建议您可以使用> =或<=运算符,但实际上无法以这种方式工作。有什么想法如何获取正确的数据吗?
答案 0 :(得分:4)
Twilio开发人员推广人员在这里!很好的问题,这没有充分记录。我将与团队合作解决此问题。
python库在日期之前有一个不同的过滤参数,因此您需要的是date_sent_before
而不是date_sent
:
import os
import datetime
from twilio.rest import Client
account_sid = os.environ['TWILIO_ACCOUNT_SID']
auth_token = os.environ['TWILIO_AUTH_TOKEN']
timestamp = datetime(2019, 2, 15, 0, 0,0)
client = Client(account_sid, auth_token)
# retrieve all messages before a given date
messages = client.messages.list(date_sent_before=timestamp)
print(len(messages1))
print(len(messages2))
让我知道您是否还有其他问题:)