2015-05-19 5 views
2

Я использую python 2.7 requests module, чтобы сделать веб-искатель. Но у меня возникают проблемы при обращении к сайту, требующему сертификата. Когда я сделал requests.get(url), он бросает sslError, certificate verify failed, ok.Python запрашивает не доверенный сертификат

Итак, я попытался requests.get(url, verify=False), он работает, но он возвращает мета http-equiv="refresh" url='...' и URL не один я сделал запрос. Есть ли способ решить эту проблему или необходимость отправки сертификата?

Я видел в запросах doc, что могу отправить сертификат и ключ. У меня есть certificate.crt, но у меня нет ключа, есть ли способ получить ключ? Сертификат AC certisign multipa G5 и использует TLS 1.2

+0

Похоже, что страница перенаправляет/пересылает с помощью обновления страницы, а не перенаправляет сервер, поэтому я пока не вижу никаких проблем. Что касается сертификата - вы отвечаете за веб-страницу и сертификат SSL, который он использует? Похоже, что это самозаверяющий сертификат на конце хоста, а 'запросы' не нравятся те, у которых отсутствует параметр' verify = False'. – birryree

+0

Похоже, что их сайт не разрешает прямой доступ к этому URL-адресу и поэтому перенаправляет вас на портал. Возможно, вам придется найти другой способ доступа к нему, или может потребоваться аутентификация? – birryree

ответ

1

После долгого времени, пытаясь решить эту проблему, я понял это. Проблема не в сертификате SSL.

Я делал запрос на веб-страницу, которая требует сеанса; URL-адрес, который я использовал, перенаправляется с другой страницы. Чтобы получить доступ к нему правильно, мне пришлось отправить запрос на эту страницу и получить последнюю перенаправленную страницу.

Итак, что я использовал метод Session Обработка запросов:

Session.get(url, verify=False) 

где url является перенаправление URL.

Смежные вопросы