无法将Twilio Python SDK响应对象序列化为简单dict对象
我正在查询可用的电话号码,如下所示:无法将Twilio Python SDK响应对象序列化为简单dict对象,python,twilio,twilio-api,twilio-python,Python,Twilio,Twilio Api,Twilio Python,我正在查询可用的电话号码,如下所示: 从twilio.rest导入客户端 client=client(settings.TWILIO\u ACCOUNT\u SID,settings.TWILIO\u AUTH\u令牌) 可用=客户端。可用电话号码(“美国”)。本地。列表() 我想将所有可用的电话号码作为字典对象进行循环,但据我所知,Twilio的Python SDK没有类似的东西 我必须做以下工作: results = [{ "address_requirements&qu
从twilio.rest导入客户端
client=client(settings.TWILIO\u ACCOUNT\u SID,settings.TWILIO\u AUTH\u令牌)
可用=客户端。可用电话号码(“美国”)。本地。列表()
我想将所有可用的电话号码作为字典对象进行循环,但据我所知,Twilio的Python SDK没有类似的东西
我必须做以下工作:
results = [{
"address_requirements": phone.address_requirements,
"beta": phone.beta,
"capabilities": phone.capabilities,
"MMS": phone.MMS,
"SMS": phone.SMS,
"fax": phone.fax,
"voice": phone.voice,
"friendly_name": phone.friendly_name,
"iso_country": phone.iso_country,
"lata": phone.lata,
"locality": phone.locality,
"longitude": phone.longitude,
"phone_number": phone.phone_number,
"postal_code": phone.postal_code,
"rate_center": phone.rate_center,
"region": phone.region
} for phone in available]
这样做似乎很愚蠢,因为API返回的是我想要的确切格式。我很想放弃SDK,直接进行调用。经过大量搜索和深入研究源代码,我找到了一种访问所需数据的简单方法。它使用一个你不应该使用的私有属性,但是如果它们不能提供你需要的东西,你就必须做你必须做的事情 虽然我仍然需要运行一个额外的不必要的循环,但我可以通过此操作实现我想要的结果:
从twilio.rest导入客户端
client=client(settings.TWILIO\u ACCOUNT\u SID,settings.TWILIO\u AUTH\u令牌)
可用=客户端。可用电话号码(“美国”)。本地。列表()
结果=[phone.\u可用的phone属性]
请找到更好的标题来反映您的问题;)