Преобразование cURL в эквивалент pyCurl

У меня есть запрос на исправление с использованием cURL, теперь я хочу использовать его с python:

curl -X Patch -H "content-type: application/json" -d '{"activation": {"mode":"activate_immediate"},"transport_params":[{"destination_ip":"239.255.255.50","destination_port": 5004, "rtp_enabled": True, "source_ip": "192.168.10.115","source_port":"auto"}]}' http://ip:port/x-nmos/connection/v1.2/single/uuid/staged

Может ли кто-нибудь помочь мне с эквивалентом pyCurl или любым другим способом, которым я могу сделать это с помощью python?


person Community    schedule 16.04.2020    source источник
comment
requests.readthedocs.io/en/master/user/quickstart   -  person jordanm    schedule 16.04.2020
comment
Вы хотите сделать GET?   -  person Michel Guimarães    schedule 16.04.2020
comment
Не используйте pycurl. Это кошмар. Вместо этого используйте запросы.   -  person Z4-tier    schedule 16.04.2020
comment
@MichelGuimarães Я хочу сделать запрос PATCH.   -  person    schedule 17.04.2020


Ответы (1)


Я советую вам использовать библиотеку request вместо pyCurl, как упоминалось @Z4-tier. Пытаться:

import requests
headers = {"content-type": "application/json"}
data = {"activation": {"mode":"activate_immediate"},"transport_params":[{"destination_ip":"239.255.255.50","destination_port": 5004, "rtp_enabled": True, "source_ip": "192.168.10.115","source_port":"auto"}]}
url = "http://IP:PORT/x-nmos/connection/v1.0/single/UUID/staged"
resquest = requests.patch(url = url, data = data, headers = headers)

Я не смог выполнить запрос из-за ошибки IP или порта. Убедитесь, что тело запроса правильное!

person Michel Guimarães    schedule 17.04.2020
comment
Извините, я не могу поделиться IP, PORT и UUID из-за проблем с безопасностью. На самом деле я пробовал requests раньше, я получаю <Response [200]>, но когда я пытаюсь распечатать содержимое ответа, он пуст. Насколько я знаю, содержимое ответа должно содержать обновленные параметры. У вас есть какие-либо идеи, что может быть причиной проблемы. - person ; 21.04.2020