OSError:[Errno 8] Exec格式错误selenium

17 python selenium

试图学习如何使用selenium,我设法克服了第一个错误,其中涉及chrome驱动程序不在路径名中,但它引发了另一个错误.

  from selenium import webdriver
    from selenium.webdriver.common.keys import Keys


    driver = webdriver.Chrome('/Users/williamneal/Scratch/Titanic/chromedriver')
    driver.get("http://www.bbc.com")
Run Code Online (Sandbox Code Playgroud)

错误:Traceback(最近一次调用最后一次):

  File "<ipython-input-1-84256e62b8db>", line 5, in <module>
    driver = webdriver.Chrome('/Users/williamneal/Scratch/Titanic/chromedriver')

  File "/Users/williamneal/anaconda/lib/python3.5/site-packages/selenium/webdriver/chrome/webdriver.py", line 62, in __init__
    self.service.start()

  File "/Users/williamneal/anaconda/lib/python3.5/site-packages/selenium/webdriver/common/service.py", line 64, in start
    stdout=self.log_file, stderr=self.log_file)

  File "/Users/williamneal/anaconda/lib/python3.5/subprocess.py", line 950, in __init__
    restore_signals, start_new_session)

  File "/Users/williamneal/anaconda/lib/python3.5/subprocess.py", line 1544, in _execute_child
    raise child_exception_type(errno_num, err_msg)

OSError: [Errno 8] Exec format error
Run Code Online (Sandbox Code Playgroud)

有一个潜在的解决方案在这里,其中包括安装通过家酿Chrome的驱动程序但选项不可用我.

有任何想法吗?

Sat*_*pta 17

看起来这是抱怨chromedriver二进制的格式.这可能是因为平台和chromedriver格式不匹配.例如,windows需要chromedriver.exe,而linux和mac有不同的格式.

如果您不想通过软件包管理器安装,只需从https://sites.google.com/a/chromium.org/chromedriver/downloads下载chromedriver

注意:根据您的操作系统选择文件

然后将它放在os上的任何位置并将该路径作为参数传递.如果您不想每次都传递该位置,也可以设置webdriver.chrome.driver环境变量.