Ошибка SSL при выполнении IBM Watson Python SDK - PullRequest
0 голосов
/ 17 сентября 2018

Я пытаюсь запустить приведенный ниже код Python для тестирования NLU Watson, но когда я его запускаю, я получаю следующую ошибку подтверждения SSL.

Помогите, пожалуйста!

from __future__ import print_function
import json
from watson_developer_cloud import NaturalLanguageUnderstandingV1
from watson_developer_cloud.natural_language_understanding_v1 import Features, EntitiesOptions
service = NaturalLanguageUnderstandingV1(
    version='2018-03-19',
    url='https://gateway-wdc.watsonplatform.net/natural-language-understanding/api/v1',
    iam_apikey='< my apikey')
response = service.analyze(
    text='< my text >',
    features=Features(entities=EntitiesOptions(model= "65b0150f-1cf8-4ca6-ab2d-4adec77fbca2")
    )
)
print(json.dumps(response, indent=2))

Сообщение об ошибке:

Traceback (последний вызов был последним):
Файл "D: \ Python37 \ lib \ site-packages \ urllib3 \ connectionpool.py", строка 594, в urlopen
self._prepare_proxy (Conn)
Файл "D: \ Python37 \ lib \ site-packages \ urllib3 \ connectionpool.py", строка 815, в _prepare_proxy
conn.connect ()
Файл "D: \ Python37 \ lib \ site-packages \ urllib3 \ connection.py", строка 356, в файле connect
ssl_context = контекст)
Файл "D: \ Python37 \ lib \ site-packages \ urllib3 \ util \ ssl_.py", строка 359, в ssl_wrap_socket
вернуть context.wrap_socket (sock, имя_сервера = имя_сервера)
Файл "D: \ Python37 \ lib \ ssl.py", строка 412, в wrap_socket
сессия = сессия
Файл "D: \ Python37 \ lib \ ssl.py", строка 850, в _create
self.do_handshake ()
Файл "D: \ Python37 \ lib \ ssl.py", строка 1108, в do_handshake
self._sslobj.do_handshake ()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] проверка сертификата не удалась: самозаверяющий сертификат в сертификате
цепь (_ssl.c: 1045)
Во время обработки вышеупомянутого исключения произошло другое исключение:
Traceback (последний вызов был последним):
Файл "D: \ Python37 \ lib \ site-packages \ запросы \ adapters.py", строка 445, в send
Тайм-аут = тайм-аут
Файл "D: \ Python37 \ lib \ site-packages \ urllib3 \ connectionpool.py", строка 638, в urlopen
_stacktrace = sys.exc_info () [2]) * 1 033 * Файл "D: \ Python37 \ lib \ site-packages \ urllib3 \ util \ retry.py", строка 398, с шагом
поднять MaxRetryError (_pool, url, error или ResponseError (причина))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool (host = 'iam.bluemix.net', port = 443): Макс. повторных попыток
превышен с помощью url: / identity / token (вызвано
SSLError (SSLCertVerificationError (1, '[SSL: CERTIFICATE_VERIFY_FAILED]
сертификат не удался: самоподписанный сертификат в сертификате
цепь (_ssl.c: 1045) ')))
Во время обработки вышеуказанного исключения произошло другое исключение:
Traceback (последний вызов был последним):
Файл "instancelo-nlu.py", строка 13, в features = Features (entity = EntitiesOptions (model = "65b0150f-1cf8-4ca6-ab2d-4adec77fbca2")
Файл "D: \ Python37 \ lib \ site-packages \ watson_developer_cloud \ natural_language_understanding_v1.py",
строка 215, в анализ
accept_json = True)
Файл "D: \ Python37 \ lib \ site-packages \ watson_developer_cloud \ watson_service.py",
линия 434, по запросу
access_token = self.token_manager.get_token ()
Файл "D: \ Python37 \ lib \ site-packages \ watson_developer_cloud \ iam_token_manager.py",
строка 47 в get_token
token_info = self._request_token ()
Файл "D: \ Python37 \ lib \ site-packages \ watson_developer_cloud \ iam_token_manager.py",
строка 78, в _request_token
Данные = данные)
Файл "D: \ Python37 \ lib \ site-packages \ watson_developer_cloud \ iam_token_manager.py",
строка 28, по запросу
data = data, ** kwargs)
Файл "D: \ Python37 \ lib \ site-packages \ запросы \ api.py", строка 58, в запросе
return session.request (method = method, url = url, ** kwargs)
Файл "D: \ Python37 \ lib \ site-packages \ запросы \ sessions.py", строка 512, в запросе
resp = self.send (prep, ** send_kwargs)
Файл "D: \ Python37 \ lib \ site-packages \ запросы \ sessions.py", строка 622, в send
г = адаптер.send (запрос, ** kwargs)
Файл "D: \ Python37 \ lib \ site-packages \ запросы \ adapters.py", строка 511, в send
поднять SSLError (e, request = request)
request.exceptions.SSLError: HTTPSConnectionPool (host = 'iam.bluemix.net', port = 443): Макс. повторных попыток
превышен с помощью url: / identity / token (вызвано
SSLError (SSLCertVerificationError (1, '[SSL: CERTIFICATE_VERIFY_FAILED]
сбой проверки сертификата: самоподписанный сертификат в сертификате
цепь (_ssl.c: 1045) ')))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...