我的消息对象有1000多条记录。在
在我的代码中,我在循环并从一个特定的“发送自”电话号码中挑选记录。我得到记录回来,我显示发送人和接收人的电话号码和一个索引号码,使计算返回的记录数更容易。在
我知道有1000多张唱片,但现在只有1000张。我怎样才能得到更多的记录?在
我一直在与Twilio支持人员合作,他们让我来这里询问,因为他们不精通Python。在
下面是我现在的代码(我当然去掉了敏感账户信息):
import requests
import json
r = requests.get('https://api.twilio.com/2010-04-01/Accounts/AccountSID/Messages.json?DateSent=2017-09-28&From=PhoneNumber&PageSize=10000', auth=('AccountSID', 'AuthToken'))
json_parsed = json.loads(r.text)
var = 0
var2 = 0
while var < 10000:
var1 = var
if (json_parsed['messages'][var1]['from']) == "+PhoneNumber":
print "From:" + " " + json_parsed['messages'][var1]['from']
print "To::" + " " +json_parsed['messages'][var1]['to']
print "\n"
vartotal = var1 + 1
print vartotal
var = var1 + 1
Twilio restapi限制了可以返回的记录量。你需要使用分页。关键变量是in the Twilio Paging documentation,但它只涉及向URL添加一个
Page
参数。在所以你会得到1000页。如果只返回1000个,则处理并请求下一页。如果返回的值小于1000,则跳出循环。在
您还可以查找JSON中返回的
nextpageuri
。如果有,就跟着它。在这是您的代码,但写得很好:
使用
for
循环,让它处理计数器变量,并迭代您请求的全部消息。使用"".format()
格式化字符串。在您遇到的问题是您请求了10000条消息:('https://api.twilio.com/2010-04-01/Accounts/AccountSID/Messages.json?DateSent=2017-09-28&From=PhoneNumber&PageSize=10000')TwilioAPI是如何工作的我不知道,但它可能有一个最大值的设置,您无法获取那么多。如果这是真的,他们将有某种类型的页面设置,允许您获得下一个X消息,可能是通过指定消息的起始位置和所需的amount。在
相关问题 更多 >
编程相关推荐