Форум сайта python.su
Вы бы скрипт разнообразия ради выложили бы? А то можно только предположения делать на тему вышеуказанных ошибок.
Офлайн
0
Извините, но я удалил скрипт…
Отредактировано philips2009 (Апрель 4, 2019 08:46:41)
Офлайн
Соединение вы можете проверить просто выполнив какой-нибудь простой запрос к другому сайту.
У вас взаимодействие с интернетом осуществляет одна функция:
def get_html(url): r = requests.get(url) html = r.text return html
Отредактировано Yuri197 (Апрель 3, 2019 12:47:28)
Офлайн
0
Проверил работу данного скрипта на другом ПК где скорость интернета выше и стабильнее - работает без каких либо проблем и ошибок
Отредактировано philips2009 (Апрель 3, 2019 13:00:18)
Офлайн
0
Извините за назойливость, еще ошибки:
Traceback (most recent call last): File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 560, in urlopen body=body, headers=headers) File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 346, in _make_request self._validate_conn(conn) File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 787, in _validate_conn conn.connect() File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 252, in connect ssl_version=resolved_ssl_version) File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 305, in ssl_wrap_socket return context.wrap_socket(sock, server_hostname=server_hostname) File "/usr/lib/python3.5/ssl.py", line 377, in wrap_socket _context=self) File "/usr/lib/python3.5/ssl.py", line 752, in __init__ self.do_handshake() File "/usr/lib/python3.5/ssl.py", line 988, in do_handshake self._sslobj.do_handshake() File "/usr/lib/python3.5/ssl.py", line 633, in do_handshake self._sslobj.do_handshake() ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:645) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/requests/adapters.py", line 376, in send timeout=timeout File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 589, in urlopen raise SSLError(e) requests.packages.urllib3.exceptions.SSLError: EOF occurred in violation of protocol (_ssl.c:645) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "999_parser.py", line 430, in <module> main() File "999_parser.py", line 300, in main cat_url_html = get_html(cat_url) File "999_parser.py", line 11, in get_html r = requests.get(url) File "/usr/lib/python3/dist-packages/requests/api.py", line 67, in get return request('get', url, params=params, **kwargs) File "/usr/lib/python3/dist-packages/requests/api.py", line 53, in request return session.request(method=method, url=url, **kwargs) File "/usr/lib/python3/dist-packages/requests/sessions.py", line 480, in request resp = self.send(prep, **send_kwargs) File "/usr/lib/python3/dist-packages/requests/sessions.py", line 588, in send r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 447, in send raise SSLError(e, request=request) requests.exceptions.SSLError: EOF occurred in violation of protocol (_ssl.c:645)
Офлайн
0
Вместо for ( в функции main() ):
for url in urls: try: data = get_data(url) except ... ReadTimeout: ... except ... ConnectTimeout: ...
n = 0 while n < len(urls): try: data = urls[n] n += 1 except ... ReadTimeout: ... except ... ConnectTimeout: ...
Отредактировано philips2009 (Апрель 4, 2019 09:21:46)
Офлайн