Selenium / Chrome / ChromeDriver Problema que impide el rastreo en VPS (el archivo DevToolsActivePort no existe)

Compré un VPS, el primero que tengo, que ejecuta CentOS 7 de 64 bits. No tenía absolutamente ninguna experiencia con CentOS 7 hasta que comencé a usar este VPS hoy, así que por favor, sea fácil conmigo.

Al intentar raspar parte del contenido generado dinámicamente con Scrapy y Selenium, el script finalmente falla y el registro arroja un error que dice:
DevToolsActivePort file doesn't exist

En la siguiente línea del registro, muestra información sobre Chrome WebDriver:
(Driver info: chromedriver=2.40.565383 ...

Por lo tanto, sospecho que el problema no tiene nada que ver con la ubicación dewebdriver.

He incluido parte del registro a continuación. La ejecución de la secuencia de comandos siempre comienza a colgarse por un período prolongado de tiempo antes de fallar en última instancia cuando se consulta por primera vez a Selenium, por lo que no he incluido la parte puramente Scrapy del registro.

La segunda respuesta con 4 votos eneste hilo lee, "Este mensaje de error implica que ChromeDriver no pudo iniciar / generar un nuevo WebBrowser, es decir, la sesión del navegador Chrome".

Instalé el navegador Chrome de acuerdo conestas instrucciones del repositorio oficial.

Chrome está instalado en la/usr/bin/google-chrome directorio, mientras quechromedriver se encuentra en el/usr/local/bin/ directorio. Ambos directorios se han agregado aPATH.

He intentado buscar sección 7.1 Excepciones en esta documentación no oficial de Selenium para cualquier cosa que tenga que ver con este error, pero surgió con las manos vacías.

Cuando intento iniciar Google Chrome en el VPS a través de SSH, aparece un error que dice [83526:83526:0622/212649.156252:ERROR:zygote_host_impl_linux.cc(88)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180. y enlaces a una página que ya no está disponible ... Cuando intento abrir Chrome con la --no-sandbox parámetro, entonces recibo el error: (google-chrome-stable:85573): Gtk-WARNING **: cannot open display: [0622/221013.556327:ERROR:nacl_helper_linux.cc(310)] NaCl helper process running without a sandbox! Most likely you need to configure your SUID sandbox correctly.

Nada está mal con mi código, aunque de todos modos lo incluiré a continuación. Mi script funciona bien localmente en mi propia computadora.

¿Que esta pasando Estoy perdido ahora mismo. Cualquier ayuda sería apreciada a lo grande!

Todavía tengo que intentar jugar con los parámetros de opción dewebdriver.Chrome(...), pero planeo intentar esto justo después de que termine de publicar esta pregunta.

Anterior son solo algunas de las cosas que he tratado de remediar la situación.

Parte del registro cuando comienzan los problemas
2018-06-22 20:31:22 [selenium.webdriver.remote.remote_connection] DEBUG: POST http://127.0.0.1:41533/session {"capabilities": {"firstMatch": [{}], "alwaysMatch": {"browserName": "chrome", "platformName": "any", "goog:chromeOptions": {"extensions": [], "args": []}}}, "desiredCapabilities": {"browserName": "chrome", "version": "", "platform": "ANY", "goog:chromeOptions": {"extensions": [], "args": []}}}
2018-06-22 20:32:22 [selenium.webdriver.remote.remote_connection] DEBUG: Finished Request
2018-06-22 20:32:22 [scrapy.core.scraper] ERROR: Spider error processing <GET https://www.amazon.ca/b/ref=sr_aj?node=2055586011> (referer: None)
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/scrapy/utils/defer.py", line 102, in iter_errback
    yield next(it)
  File "/usr/local/lib/python3.6/site-packages/scrapy/spidermiddlewares/offsite.py", line 30, in process_spider_output
    for x in result:
  File "/usr/local/lib/python3.6/site-packages/scrapy/spidermiddlewares/referer.py", line 339, in <genexpr>
    return (_set_referer(r) for r in result or ())
  File "/usr/local/lib/python3.6/site-packages/scrapy/spidermiddlewares/urllength.py", line 37, in <genexpr>
    return (r for r in result or () if _filter(r))
  File "/usr/local/lib/python3.6/site-packages/scrapy/spidermiddlewares/depth.py", line 58, in <genexpr>
    return (r for r in result or () if _filter(r))
  File "/home/bldsprt/public_html/spiders/selen.py", line 53, in parse
    self.driver = webdriver.Chrome('/usr/local/bin/chromedriver')
  File "/usr/local/lib/python3.6/site-packages/selenium/webdriver/chrome/webdriver.py", line 75, in __init__
    desired_capabilities=desired_capabilities)
  File "/usr/local/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 156, in __init__
    self.start_session(capabilities, browser_profile)
  File "/usr/local/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 245, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "/usr/local/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 314, in execute
    self.error_handler.check_response(response)
  File "/usr/local/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: DevToolsActivePort file doesn't exist
  (Driver info: chromedriver=2.40.565383 (76257d1ab79276b2d53ee976b2c3e3b9f335cde7),platform=Linux 3.10.0-862.3.3.el7.x86_64 x86_64)

2018-06-22 20:32:23 [scrapy.extensions.logstats] INFO: Crawled 1 pages (at 1 pages/min), scraped 0 items (at 0 items/min)
2018-06-22 20:32:23 [scrapy.core.engine] INFO: Closing spider (finished)
2018-06-22 20:32:23 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 310,
 'downloader/request_count': 1,
 'downloader/request_method_count/GET': 1,
 'downloader/response_bytes': 111488,
 'downloader/response_count': 1,
 'downloader/response_status_count/200': 1,
 'finish_reason': 'finished',
 'finish_time': datetime.datetime(2018, 6, 23, 0, 32, 23, 3101),
 'log_count/DEBUG': 4,
 'log_count/ERROR': 1,
 'log_count/INFO': 8,
 'memusage/max': 54161408,
 'memusage/startup': 46567424,
 'response_received_count': 1,
 'scheduler/dequeued': 1,
 'scheduler/dequeued/memory': 1,
 'scheduler/enqueued': 1,
 'scheduler/enqueued/memory': 1,
 'spider_exceptions/WebDriverException': 1,
 'start_time': datetime.datetime(2018, 6, 23, 0, 31, 21, 19959)}
2018-06-22 20:32:23 [scrapy.core.engine] INFO: Spider closed (finished)
[root@host spiders]#
Parte del guión
self.driver = (executable_path='../../../../usr/local/bin/chromedriver')
self.driver.get(response.url)
self.driver.set_window_size(960, 540)
self.driver.wait = WebDriverWait(self.driver, 10)
next = self.driver.find_element_by_xpath('//a[@id="pagnNextLink"]')
href = next.get_attribute('href')
self.driver.quit()

Respuestas a la pregunta(0)

Su respuesta a la pregunta