Перевод «curl -X POST http://something » в эквивалент pycurl

#curl #pycurl

#curl #pycurl

Вопрос:

Я новичок в curl / pycurl и столкнулся с такой ситуацией. Помощь дополнительные пояснения были бы очень признательны!

По какой-либо причине «curl -X POST http://something «работает для этого API-сервиса, с которым я экспериментирую. Однако я не совсем понимаю, почему это работает, поскольку я не отправляю никаких данных на URL?

Как мне перевести это в pycurl? pycurl.POSTFIELDs и pycurl.HTTPPOST кажется эквивалентом «curl -X POST», но, похоже, я не могу заставить их работать.

Спасибо, ребята! Первый пост, давний lurker.

Каким будет эквивалент pycurl для curl -X POST http://something

 c.setopt(pycurl.URL, 'http://something')
c.setopt(pycurl.???, ???)
  

Ответ №1:

Возможно, что-то вроде этого. Не уверен, есть ли лучший способ заставить curl не добавлять какие-либо заголовки.

 import pycurl

url = 'http://httpbin.org/post'

c = pycurl.Curl()
c.setopt(c.URL, url)
c.setopt(c.CUSTOMREQUEST, 'POST')
c.setopt(c.VERBOSE, True)
c.perform()
c.close()