0
0 комментариев

Хочу сделать запрос к апи сайта при помощи pycurl.

Пример рабочего запроса из командной строки.

curl -k "https://192.168.2.1/api/login?username=admin&password=admin"

код на питоне

buffer = BytesIO()
c = pycurl.Curl()
c.setopt(c.URL, 'https://192.168.2.1/api/login?username=admin&password=admin')
c.setopt(c.WRITEDATA, buffer)
c.perform()
c.close()
 
body = buffer.getvalue()
# Body is a byte string.
# We have to know the encoding in order to print it to a text file
# such as standard output.
print(body.decode("iso-8859-1"))

выдает ошибку

pycurl.error, (60, 'server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none')

Вопрос в том как заставить аналогичный запрос работать на python.

curl команда без -k опции:

curl: (60) SSL certificate problem: self signed certificate

urlopen(url, context=ssl.create_default_context()) исключение вызывает:

urllib.error.URLError, <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>


Добавить комментарий