urllib3.exceptions.ProtocolError: (‘Connection aborted.’, error (10054, ‘Una conexión existente fue cerrada por la fuerza por el host remoto’))

Estoy tratando de abrir un sitio web en Chrome usando Python Selenium chromedriver. El navegador Chrome se está abriendo (con advertencias) y la URL no se está abriendo.

Detalles de la versión: Chrome: 68.0.3440.106 selenium: 3.14.0 chromedriver: 2.20 python: 2.7

Estoy usando el siguiente código:

import time from selenium import webdriver import selenium driver = webdriver.Chrome("C:/Python27/chromedriver.exe") driver.get("https://vancouver.craigslist.ca/") print(driver.title) time.sleep(8) driver.quit() 

Me estoy poniendo por debajo de error:

 C:\Users\sohil7777\PycharmProjects\temp.py\venv\Scripts\python.exe C:/Users/sohil7777/.PyCharmCE2018.2/config/scratches/scratch.py Traceback (most recent call last): File "C:/Users/sohil7777/.PyCharmCE2018.2/config/scratches/scratch.py", line 6, in  driver = webdriver.Chrome("C:/Python27/chromedriver.exe") File "C:\Python27\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 75, in __init__ desired_capabilities=desired_capabilities) File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 156, in __init__ self.start_session(capabilities, browser_profile) File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 251, in start_session response = self.execute(Command.NEW_SESSION, parameters) File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 318, in execute response = self.command_executor.execute(driver_command, params) File "C:\Python27\lib\site-packages\selenium\webdriver\remote\remote_connection.py", line 375, in execute return self._request(command_info[0], url, body=data) File "C:\Python27\lib\site-packages\selenium\webdriver\remote\remote_connection.py", line 397, in _request resp = self._conn.request(method, url, body=body, headers=headers) File "C:\Python27\lib\site-packages\urllib3\request.py", line 72, in request **urlopen_kw) File "C:\Python27\lib\site-packages\urllib3\request.py", line 150, in request_encode_body return self.urlopen(method, url, **extra_kw) File "C:\Python27\lib\site-packages\urllib3\poolmanager.py", line 322, in urlopen response = conn.urlopen(method, u.request_uri, **kw) File "C:\Python27\lib\site-packages\urllib3\connectionpool.py", line 638, in urlopen _stacktrace=sys.exc_info()[2]) File "C:\Python27\lib\site-packages\urllib3\util\retry.py", line 367, in increment raise six.reraise(type(error), error, _stacktrace) File "C:\Python27\lib\site-packages\urllib3\connectionpool.py", line 600, in urlopen chunked=chunked) File "C:\Python27\lib\site-packages\urllib3\connectionpool.py", line 377, in _make_request httplib_response = conn.getresponse(buffering=True) File "C:\Python27\Lib\httplib.py", line 1121, in getresponse response.begin() File "C:\Python27\Lib\httplib.py", line 438, in begin version, status, reason = self._read_status() File "C:\Python27\Lib\httplib.py", line 394, in _read_status line = self.fp.readline(_MAXLINE + 1) File "C:\Python27\Lib\socket.py", line 480, in readline data = self._sock.recv(self._rbufsize) urllib3.exceptions.ProtocolError: ('Connection aborted.', error(10054, 'An existing connection was forcibly closed by the remote host')) 

¿Me estoy perdiendo de algo? Realmente aprecio tu ayuda

Este mensaje de error …

 urllib3.exceptions.ProtocolError: ('Connection aborted.', error(10054, 'An existing connection was forcibly closed by the remote host')) 

… implica que ChromeDriver no pudo iniciar / generar un nuevo WebBrowser, es decir, una sesión de Chrome Browser .

Su principal problema es la incompatibilidad entre la versión de los binarios que está utilizando de la siguiente manera:

  • Estás utilizando Chromedriver = 2.20
  • Notas de la versión de chromedriver = 2.20 menciona claramente lo siguiente:

Soporta Chrome v43-48

  • Estás utilizando Chrome = 68.0
  • Las Notas de la versión de ChromeDriver v2.41 mencionan claramente lo siguiente:

Soporta Chrome v67-69

Así que hay una clara falta de coincidencia entre ChromeDriver v2.33 y Chrome Browser v65.0

Solución

  • Actualiza ChromeDriver al nivel actual de ChromeDriver v2.41 .
  • Mantener la versión de Chrome entre los niveles de Chrome v67-69 . ( según las notas de la versión de ChromeDriver v2.41 )
  • Limpie su Área de trabajo del proyecto a través de su IDE y Reconstruya su proyecto solo con las dependencias requeridas.
  • Si la versión básica de su cliente web es demasiado antigua, desinstálela e instale un GA reciente y una versión de lanzamiento del cliente web .
  • Ejecute su @Test .