with scraping libreria from example con python linux google-chrome selenium automated-tests
este enlace directo

scraping - Ejecutar enlaces de python Selenium WebDriver en cromo



selenium webdriver python download (7)

Para ventanas

Descarga ChromeDriver desde este enlace directo u obtén la última versión de esta página .

Pegue el archivo chromedriver.exe en su carpeta C:/Python27/Scripts .

Esto debería funcionar ahora:

from selenium import webdriver driver = webdriver.Chrome()

Me encontré con un problema mientras trabajaba con Selenium. Para mi proyecto, tengo que usar Chrome. Sin embargo, no puedo conectarme a ese navegador después de iniciarlo con Selenium.

Por algún motivo, Selenium no puede encontrar Chrome por sí mismo. Esto es lo que sucede cuando intento lanzar Chrome sin incluir una ruta:

Traceback (most recent call last): File "./obp_pb_get_csv.py", line 73, in <module> browser = webdriver.Chrome() # Get local session of chrome File "/usr/lib64/python2.7/site-packages/selenium/webdriver/chrome/webdriver.py", line 46, in __init__ self.service.start() File "/usr/lib64/python2.7/site-packages/selenium/webdriver/chrome/service.py", line 58, in start and read up at http://code.google.com/p/selenium/wiki/ChromeDriver") selenium.common.exceptions.WebDriverException: Message: ''ChromeDriver executable needs to be available in the path. Please download from http://code.google.com/p/selenium/downloads/list and read up at http://code.google.com/p/selenium/wiki/ChromeDriver''

Para resolver este problema, luego incluí la ruta de Chromium en el código que lanza Chrome. Sin embargo, el intérprete no puede encontrar un socket para conectarse:

Traceback (most recent call last): File "./obp_pb_get_csv.py", line 73, in <module> browser = webdriver.Chrome(''/usr/bin/chromium'') # Get local session of chrome File "/usr/lib64/python2.7/site-packages/selenium/webdriver/chrome/webdriver.py", line 46, in __init__ self.service.start() File "/usr/lib64/python2.7/site-packages/selenium/webdriver/chrome/service.py", line 64, in start raise WebDriverException("Can not connect to the ChromeDriver") selenium.common.exceptions.WebDriverException: Message: ''Can not connect to the ChromeDriver''

También traté de resolver el problema lanzando Chrome con:

chromium --remote-shell-port=9222

Sin embargo, esto tampoco funcionó.

PD. Aquí hay información sobre mi sistema:

www-client: chromium 15.0.874.121 dev-lang: python 2.7.2-r3 Selenium 2.11.1 OS: GNU/Linux Gentoo Kernel 3.1.0-gentoo-r1


Debe asegurarse de que el binario ChromeDriver independiente (que es diferente del binario del navegador Chrome) esté en su ruta o esté disponible en la variable de entorno webdriver.chrome.driver.

consulte http://code.google.com/p/selenium/wiki/ChromeDriver para obtener información completa sobre cómo mejorar las cosas.

Editar:

Correcto, parece ser un error en los enlaces de Python al leer el binario cromedriver de la ruta o la variable de entorno. Parece que si ChromeDriver no está en su ruta, debe pasarlo como argumento al constructor.

import os from selenium import webdriver chromedriver = "/Users/adam/Downloads/chromedriver" os.environ["webdriver.chrome.driver"] = chromedriver driver = webdriver.Chrome(chromedriver) driver.get("http://.com") driver.quit()


Hay 2 formas de ejecutar las pruebas de Python de Selenium en Google Chrome. Estoy considerando Windows (Windows 10 en mi caso):

Requisito previo: descargue el último controlador de Chrome desde: https://sites.google.com/a/chromium.org/chromedriver/downloads

Camino 1:

i) Extraiga el archivo zip descargado en un directorio / ubicación de su elección
ii) Establezca la ruta ejecutable en su código de la siguiente manera:

self.driver = webdriver.Chrome(executable_path=''D:/Selenium_RiponAlWasim/Drivers/chromedriver_win32/chromedriver.exe'')

Camino 2

i) Simplemente pegue el chromedriver.exe en / Python / Scripts / (En mi caso, la carpeta era: C: / Python36 / Scripts)
ii) Ahora escribe el código simple de la siguiente manera:

self.driver = webdriver.Chrome()


Para Windows, tenga chromedriver.exe colocado en <Install Dir>/Python27/Scripts/


Para el IDE de Windows:

Si su ruta de acceso no funciona, puede intentar agregar chromedriver.exe a su proyecto, como en esta estructura de proyecto.

Luego debería cargar chromedriver.exe en su archivo principal. En cuanto a mí, driver.exe el driver.exe en driver.py .

def get_chrome_driver(): return webdriver.Chrome("..//content//engine//chromedriver.exe", chrome_options=''--no-startup-window'')

.. significa driver.py''s directorio superior driver.py''s

. significa el directorio donde se encuentra el driver.py

Esperamos que esto sea útil.


Para Linux

  1. Compruebe que ha instalado la última versión de Chrome brwoser-> chromium chromium-browser -version
  2. Si no, instale la última versión de Chrome sudo apt-get install chromium-browser
  3. obtener la versión adecuada del controlador de Chrome desde here
  4. Descomprimir el chromedriver.zip
  5. Mueva el archivo al directorio /usr/bin sudo mv chromedriver /usr/bin
  6. Directorio de cd /usr/bin
  7. Ahora, necesitarías ejecutar algo como sudo chmod a+x chromedriver para marcarlo ejecutable.
  8. finalmente puedes ejecutar el código.

    from selenium import webdriver driver = webdriver.Chrome() driver.get("http://www.google.com") print driver.page_source.encode(''utf-8'') driver.quit() display.stop()


Solo Mac OSX

Una forma más fácil de comenzar (suponiendo que ya tiene instalado homebrew , que debería, si no, vaya a hacerlo primero y deje que homebrew le haga la vida mejor) es simplemente ejecutar el siguiente comando:

brew install chromedriver

Eso debería poner al conductor cromado en su camino y debería estar todo listo.