表单数据请求包含许多具有相同名称的元素

问题描述 投票:0回答:2

我确实需要为网页帖子创建一个长参数列表,该列表不是基于字典的多个相同键的原因。

Chromium将此字符串显示为原始请求中的表单数据

p_action=RUN&p_mode=1&p_exec_mode=&p_page_url=&p_redirect_url=&p_reference_path=&p_arg_names=_title&p_arg_values=ARRAYSTART&p_arg_values=kschulz&p_arg_values=ARRAYEND&p_arg_names=reqnum&p_arg_values=ARRAYSTART&p_arg_values=0&p_arg_values=ARRAYEND&p_arg_names=_orderby_ord_1&p_arg_values=ASC

....更多条目如下。

我知道这是一个疯狂的表格数据,但我无法改变这一点。 p_arg_names使用多次,有时后跟多个p_arg_value条目。阵列启动和阵列停止甚至存在......所以我也需要正确的订单。

params=dict ......在这里不能工作。

如何在不丢失的情况下为requests.push(URL,DATA)提供更长的纯字符串

Content-Type:application/x-www-form-urlencoded
python python-3.x request
2个回答
0
投票

使用requests模块

import requests

request.post('http://127.0.0.1/8000/', params= {'p_arg_names': ['a', 'b']})

结果是

发布http://127.0.0.1/8000/?p_arg_names=a&p_arg_names=b HTTP / 1。


0
投票

params dict可以在这里工作,给它一个值列表..,例如:

r = requests.get('http://example.com', {'something': [1, 2, 3, 4, 5]})

(使用.get / .put / .post / .patch - 或者你的意思是什么。上面的.push)

服务器将收到如下请求:

"GET /?something=1&something=2&something=3&something=4&something=5 HTTP/1.1" 200 396 "-" "python-requests/2.18.4"
© www.soinside.com 2019 - 2024. All rights reserved.