В Python, как я могу отправить запрос POST с параметрами в кодировке URL, которые имеют глубину 5 гнезд? - PullRequest
0 голосов
/ 01 ноября 2019

Я хотел бы отправить запрос POST, используя библиотеку requests в Python 3. Единственная сложность, с которой я столкнулся, заключается в том, как встроить часть формы, кодированную urlenco. Необработанная форма выглядит следующим образом:

URLEncoded form:                                                                                                                         
data[type]: portion_send
data[attributes][style]: first_style
data[nodes][front][data][id]:1111
data[nodes][back][data][id]:1115

Лучшее, что я смог сделать, это иметь:

data = {"data": {"attribute": {"style":"first_style"}, "узлы": { "передний": { "данные": { "ID": "1111"}}, "назад": { "данные": { "ID": "1115"}}}, "type": "part_send"}}

и встраивать это в функцию requests.post с params = data, params = json.dumps(data) и data = json.dumps(data), каждый безрезультатно.

У кого-нибудь есть идеи, как я могу поместить это в запрос на публикацию? Странная часть в том, что гнездо прыгает глубоко, и это сбивает меня с толку. Спасибо!

1 Ответ

0 голосов
/ 01 ноября 2019

Модуль Python Requests

Мне нужно знать, что было сообщение об ошибке, чтобы помочь вам с модулем Python requests.

Использование Linux илиMacOS Curl` Если вышеперечисленное не помогает, вы можете попробовать это:

os.execv('curl -d data=value http://YourWebsite.com')

Он выполняет отдельный процесс на вашем ПК. Если вы используете Windows, вы можете установить curl отсюда: curl.haxx.se .

...