Уведомления

Группа в Telegram: @pythonsu

#1 Май 27, 2010 16:27:10

T0M
От:
Зарегистрирован: 2010-04-23
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

pycurl ssl

Доброго времени суток!
Так произошло, что при работе с пикурлом наткнулся на https. Судя по логам, ошибка с сертификатом, но не совсем понятно каким образом её решить. Заранее спасибо!

Код:

#!/usr/bin/python
# -*- coding: utf-8 -*-

import pycurl
from cStringIO import StringIO

class Https:

def __init__(self):

self.cookies = ‘'
self.ua = ’Mozilla FireFox'

def _curlini(self):

curl = pycurl.Curl()
curl.setopt(curl.COOKIELIST, ‘')
curl.setopt(curl.ENCODING, ’gzip,deflate')
curl.setopt(curl.NOSIGNAL, 1)
curl.setopt(curl.USERAGENT, self.ua)
curl.setopt(curl.TIMEOUT, 60)
curl.setopt(curl.CONNECTTIMEOUT, 12)

for c in self.cookies: curl.setopt(curl.COOKIELIST, c)
return curl

def _curl_perform(self, curl):

curl.perform()
self.cookies = curl.getinfo(curl.INFO_COOKIELIST)

def _get(self, url):

curl = self._curlini()
sio = StringIO()
curl.setopt(curl.FOLLOWLOCATION, 1)
curl.setopt(curl.URL, url)
curl.setopt(curl.WRITEFUNCTION, sio.write)
self._curl_perform(curl)

return sio.getvalue()

def get_page(self, url):

return self._get(url)

get_https = Https()

try:
res = get_https.get_page('https://www.icq.com/password/')
except pycurl.error, err:
print err
else:
print res
Лог ошибки:
(60, ‘SSL certificate problem, verify that the CA cert is OK. Details:\nerror:14
090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed’)
Заранее спасибо!



Офлайн

#2 Май 27, 2010 17:30:51

plusplus
От:
Зарегистрирован: 2009-01-05
Сообщения: 418
Репутация: +  15  -
Профиль   Отправить e-mail  

pycurl ssl

Гугли по пхп на тему курла, всё то же самое. Также на такую ошибку натыкался.
Вот решение:
curl.setopt(pycurl.SSL_VERIFYPEER,False)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version