Использование: Python 3.12, Feedparser 6.0.11, установлены CA-сертификаты
При попытке прочитать этот RSS-канал: https://www.nasdaq.com/feed/rssoutbound? категория=Финансы+Консультанты. Библиотека Feedparser возвращает эту ошибку.
https://www.nasdaq.com/feed/rssoutbound?category=Innovation
^CTraceback (most recent call last):
File "/home/nckr/kiwichi/read.py", line 78, in
NewsFeed = feedparser.parse(url)
^^^^^^^^^^^^^^^^^^^^^
File "/home/nckr/kiwichi/venv/lib/python3.12/site-packages/feedparser/api.py", line 216, in parse
data = _open_resource(url_file_stream_or_string, etag, modified, agent, referrer, handlers, request_headers, result)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/nckr/kiwichi/venv/lib/python3.12/site-packages/feedparser/api.py", line 115, in _open_resource
return http.get(url_file_stream_or_string, etag, modified, agent, referrer, handlers, request_headers, result)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/nckr/kiwichi/venv/lib/python3.12/site-packages/feedparser/http.py", line 171, in get
f = opener.open(request)
^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 515, in open
response = self._open(req, data)
^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 532, in _open
result = self._call_chain(self.handle_open, protocol, protocol +
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 492, in _call_chain
result = func(*args)
^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 1392, in https_open
return self.do_open(http.client.HTTPSConnection, req,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/urllib/request.py", line 1348, in do_open
r = h.getresponse()
^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/http/client.py", line 1428, in getresponse
response.begin()
File "/usr/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/http/client.py", line 292, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/socket.py", line 707, in readinto
return self._sock.recv_into(b)
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/ssl.py", line 1252, in recv_into
return self.read(nbytes, buffer)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/ssl.py", line 1104, in read
return self._sslobj.read(len, buffer)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
KeyboardInterrupt
Я попытался установить непроверенный контекст SSL (Feedparser.parse() 'SSL: CERTIFICATE_VERIFY_FAILED') в начале скрипта, но все равно получаю эту ошибку.
if hasattr(ssl, '_create_unverified_context'):
ssl._create_default_https_context = ssl._create_unverified_context
Я предполагаю, что глобальная настройка SSL будет волшебным образом использоваться библиотекой Feedparser, и мне не нужно передавать ее явно.
Есть ли другой обходной путь или в любом случае, чтобы получить дополнительную информацию о фактической ошибке, кроме ошибки чтения SSL. Также может быть ошибка тайм-аута. Однако я могу успешно получить доступ к URL-адресу, используя Curl в командной строке.
Спасибо
Использование: Python 3.12, Feedparser 6.0.11, установлены CA-сертификаты При попытке прочитать этот RSS-канал: https://www.nasdaq.com/feed/rssoutbound? категория=Финансы+Консультанты. Библиотека Feedparser возвращает эту ошибку. [code]https://www.nasdaq.com/feed/rssoutbound?category=Innovation ^CTraceback (most recent call last): File "/home/nckr/kiwichi/read.py", line 78, in NewsFeed = feedparser.parse(url) ^^^^^^^^^^^^^^^^^^^^^ File "/home/nckr/kiwichi/venv/lib/python3.12/site-packages/feedparser/api.py", line 216, in parse data = _open_resource(url_file_stream_or_string, etag, modified, agent, referrer, handlers, request_headers, result) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/nckr/kiwichi/venv/lib/python3.12/site-packages/feedparser/api.py", line 115, in _open_resource return http.get(url_file_stream_or_string, etag, modified, agent, referrer, handlers, request_headers, result) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/nckr/kiwichi/venv/lib/python3.12/site-packages/feedparser/http.py", line 171, in get f = opener.open(request) ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 515, in open response = self._open(req, data) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 532, in _open result = self._call_chain(self.handle_open, protocol, protocol + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 492, in _call_chain result = func(*args) ^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 1392, in https_open return self.do_open(http.client.HTTPSConnection, req, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/urllib/request.py", line 1348, in do_open r = h.getresponse() ^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/http/client.py", line 1428, in getresponse response.begin() File "/usr/lib/python3.12/http/client.py", line 331, in begin version, status, reason = self._read_status() ^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/http/client.py", line 292, in _read_status line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/socket.py", line 707, in readinto return self._sock.recv_into(b) ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/ssl.py", line 1252, in recv_into return self.read(nbytes, buffer) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/ssl.py", line 1104, in read return self._sslobj.read(len, buffer) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ KeyboardInterrupt [/code] Я попытался установить непроверенный контекст SSL (Feedparser.parse() 'SSL: CERTIFICATE_VERIFY_FAILED') в начале скрипта, но все равно получаю эту ошибку. [code]if hasattr(ssl, '_create_unverified_context'): ssl._create_default_https_context = ssl._create_unverified_context [/code] Я предполагаю, что глобальная настройка SSL будет волшебным образом использоваться библиотекой Feedparser, и мне не нужно передавать ее явно. Есть ли другой обходной путь или в любом случае, чтобы получить дополнительную информацию о фактической ошибке, кроме ошибки чтения SSL. Также может быть ошибка тайм-аута. Однако я могу успешно получить доступ к URL-адресу, используя Curl в командной строке. Спасибо
При использовании Python 3.12, Feedparser 6.0.11 и установленных CA-сертификатов
При попытке прочитать этот RSS-канал: категория=Финансы+Консультанты. Библиотека Feedparser возвращает эту ошибку.
При использовании Python 3.12, Feedparser 6.0.11 и установленных CA-сертификатов
При попытке прочитать этот RSS-канал: категория=Финансы+Консультанты. Библиотека Feedparser возвращает эту ошибку.
Я пробую демонстрационное приложение для Android для подключения сервиса (как локального сервера, так и экземпляра AWS), оно дает ошибку рукопожатия. Я также пытался с клиентом Volley и HTTP. Соответствующий код и результат logcat следуют. В...
Я пробую демонстрационное приложение для Android для подключения сервиса (как локального сервера, так и экземпляра AWS), оно дает ошибку рукопожатия. Я также пытался с клиентом Volley и HTTP. Соответствующий код и результат logcat следуют. В...
У меня есть одна активная асинхронная операция, это http :: async_read . В тот момент, когда я хочу закрыть соединение SSL, я отменяю эту асинхронную операцию в сокете, вызывая ip :: tcp :: oucket :: cancel .
Затем я заканчиваю соединение SSL, как...