当前位置: 首页 > 编程笔记 >

python requests post多层字典的方法

宗烨赫
2023-03-14
本文向大家介绍python requests post多层字典的方法,包括了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是一个一层的字典。多层字典传输的时候,确实会异常。

解决办法:

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

以上这篇python requests post多层字典的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • dict的很多方法跟list有类似的地方,下面一一道来,并且会跟list做一个对比 嵌套 嵌套在list中也存在,就是元素是list,在dict中,也有类似的样式: >>> a_list = [[1,2,3],[4,5],[6,7]] >>> a_list[1][1] 5 >>> a_dict = {1:{"name":"qiwsir"},2:"python","email":"qiwsir@gm

  • 问题内容: 我想将JSON数据存储在Python Pandas DataFrame中 我的JSON数据是像这样的字典的字典 我这样做是为了将数据放入DataFrame 我明白了 我的问题是我的DataFrame包含字典而不是值。 我想知道如何使用Pandas DataFrame管理多维数据(超过2个维度…这里有3个维度)。 DataFrame中的每个字典都有相同的键。 问题答案: df = pd.

  • 问题内容: 我正在尝试漂亮地打印字典,但是我没有运气: 我希望输出在多行中,如下所示: 能做到吗?如果不是,那么它是哪个模块?我正在使用Python 2.7.3 。 问题答案: 使用或:

  • 1 直接创建 dict = {'name':'earth', 'port':'80'} 2 工厂方法 items=[('name','earth'),('port','80')] dict2=dict(items) dict1=dict((['name','earth'],['port','80'])) 3 fromkeys()方法 dict1={}.fromkeys(('x','y'),-1

  • Python3 字典 描述 Python 字典 popitem() 方法随机返回并删除字典中的一对键和值(一般删除末尾对)。 如果字典已经为空,却调用了此方法,就报出KeyError异常。 语法 popitem()方法语法: popitem() 参数 无 返回值 返回一个键值对(key,value)形式。 实例 以下实例展示了 popitem() 方法的使用方法: #!/usr/bin/py

  • Python3 字典 描述 Python 字典 pop() 方法删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。 语法 pop()方法语法: pop(key[,default]) 参数 key: 要删除的键值 default: 如果没有 key,返回 default 值 返回值 返回被删除的值。 实例 以下实例展示了 pop() 方法的使