web-dev-qa-db-fra.com

Selenium donne "Selenium.common.exceptions.WebDriverException: Message: erreur inconnue: impossible de trouver le binaire Chrome" sur Mac

Essayer de faire fonctionner Selenium avec Python 3 à des fins de nettoyage Web:

from Selenium import webdriver
chrome_path = r"/Library/Frameworks/Python.framework/Versions/3.6/bin/chromedriver"
driver = webdriver.Chrome(chrome_path)

Je reçois le message d'erreur suivant: 

Selenium.common.exceptions.WebDriverException: Message: erreur inconnue: impossible de trouver le binaire Chrome

Une question similaire a été abordée ici , mais ce qui me dérange, c’est que Chrome est déjà installé sur mon système. L'autre demandeur ne l'avait apparemment pas sur son ordinateur. J'utilise la dernière version de Mac OS.

4
Alex Heebs

Le problème est que chromedriver doit également savoir où se trouve le chrome. Dans votre cas, il s'agit d'un chemin autre que celui par défaut. Vous devez donc spécifier le chemin complet du binaire Google Chrome.

options = webdriver.ChromeOptions()
options.binary_location = "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
chrome_driver_binary = "/usr/local/bin/chromedriver"
driver = webdriver.Chrome(chrome_driver_binary, chrome_options=options)

Le code ci-dessus est ce que vous devez utiliser

10
Tarun Lalwani

Si votre chromedriver se trouve dans le répertoire /Library/Frameworks/Python.framework/Versions/3.6/bin/, le bloc de code suivant devrait fonctionner pour vous:

from Selenium import webdriver

chrome_path = r'/Library/Frameworks/Python.framework/Versions/3.6/bin/chromedriver'
driver = webdriver.Chrome(executable_path=chrome_path)
driver.get('https://www.google.co.in')
1
DebanjanB

J'ai rencontré ce problème ennuyeux quand je lis Selenium. Voici ma solution: (MacOS 10.13.4)

  1. désinstaller mon chrome
  2. utilisez homebrew pour installer chromedriver: brew cask install chromedriver
  3. utilisez homebrew pour installer chrome: brew cask install google-chrome

Grâce à homebrew, chrome et chromedriver sont maintenant installés dans le même dossier et ce problème sera automatiquement résolu.

1
EckoTan
options = webdriver.ChromeOptions()
options.binary_location = r"<YOUR_CHROME_PATH>\chrome.exe"
chrome_driver_path = r"<PATH_TO_CHROME_DRIVER>\chromedriver.exe>"

browser = webdriver.Chrome(chrome_driver_path, chrome_options=options)
1
adrian filipescu

Si quelqu'un rencontre la même erreur sur la machine Linux, il vous manque alors l'installation de google chrome _ comme l'une des étapes nécessaires au bon fonctionnement du pilote chrome.

Suivez le lien ci-dessous pour installer Google Chrome sous Linux.

https://www.cyberciti.biz/faq/howto-install-google-chrome-on-redhat-rhel-Fedora-centos-linux/

Maintenant, vérifiez le code

driver = webdriver.Chrome (executable_path = '/ usr/bin/chromedriver', options = chrome_options, service_args = ['- verbose', '--log-path =/tmp/chromedriver.log'])

Pour moi cela a fonctionné.

0
AshishPatil