扣丁学堂Python培训简述Python requests post多层字典的方法

2019-09-23 11:24:25 4837浏览

本篇文章扣丁学堂Python培训小编为大家分享一篇Python requests post多层字典的方法,文中有详细的代码列出供小伙伴们参考,对Python开发感兴趣的小伙伴一起跟随小编过来看看吧。


扣丁学堂Python培训简述Python requests post多层字典的方法


pyhton requests模块post方法传参为多层字典时,转换错误。


如,表单传参


{ 
“a”:1, 
“b”:{ 
“A”:2, 
“B”:3 
} 
}


post请求后看到form data是:


a:1 
b:A 
b:B


查看官方文档:


More complicated POST requests 
Typically, you want to send some form-encoded data — much like an HTML form. To do this, simply pass a dictionary to the data argument. Your dictionary of data will automatically be form-encoded when the request is made:


payload = {‘key1': ‘value1', ‘key2': ‘value2'}

r = requests.post(“http://httpbin.org/post“, data=payload) 
print(r.text) 
{ 
… 
“form”: { 
“key2”: “value2”, 
“key1”: “value1” 
}, 
… 
}


这里说post传入的dict类型参数会被自动转化为form-encoded,查看请求后,这里的demo是一个一层的字典。多层字典传输的时候,确实会异常。


解决办法:


将第二层字典转化为json,json.dumps({“A”:2,”B”:3}),然后赋给b。


想要了解更多关于Python和人工智能方面内容的小伙伴,请关注扣丁学堂Python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的Python开发环境搭建视频,Python培训后的前景无限,行业薪资和未来的发展会越来越好的,扣丁学堂老师精心推出的Python视频教程定能让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:279521237。


扣丁学堂微信公众号                          Python全栈开发爬虫人工智能机器学习数据分析免费公开课直播间


      【关注微信公众号获取更多学习资料】         【扫码进入Python全栈开发免费公开课】



查看更多关于"Python开发资讯"的相关文章>

标签: Python培训 Python视频教程 Python在线视频 Python学习视频 Python培训班
微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备2021002079号-2   Copyright © 2017 - 2022
返回顶部 返回顶部