selenium:chromedriver与chrome版本的对应关系

今天想用Python实现一个自动刷新网页的脚本,需要用到selenium。
因为刚开始没有指定chromedriver,所以报错:

Traceback (most recent call last):
  File "D:Anaconda3libsite-packagesseleniumwebdrivercommon

service.py", line 76, in start
    stdin=PIPE)
  File "D:Anaconda3libsubprocess.py", line 709, in __init__
    restore_signals, start_new_session)
  File "D:Anaconda3libsubprocess.py", line 997, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] 系统找不到指定的文件。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "f5.py", line 5, in <module>
  File "D:Anaconda3libsite-packagesseleniumwebdriverchrome

webdriver.py", line 68, in __init__
    self.service.start()
  File "D:Anaconda3libsite-packagesseleniumwebdrivercommon

service.py", line 83, in start
    os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' 

executable needs to be in PATH. Please see 

https://sites.google.com/a/chromium.org/chromedriver/home

然后我去下载chromedriver,随便下了一个版本的,结果又报错:

DevTools listening on ws://127.0.0.1:12059/devtools/browser/c21c107d-fa6a-

4739-8cd6-0f1718fb6db8
Traceback (most recent call last):
[38752:39792:0423/153855.462:ERROR:plugin_data_remover_impl.cc(123)] Timed 

out
  File "f5.py", line 6, in <module>
  File "D:Anaconda3libsite-packagesseleniumwebdriver
emote

webdriver.py", line 726, in maximize_window
    self.execute(command, {"windowHandle": "current"})
  File "D:Anaconda3libsite-packagesseleniumwebdriver
emote

webdriver.py", line 310, in execute
    response = self.command_executor.execute(driver_command, params)
  File "D:Anaconda3libsite-packagesseleniumwebdriver
emote


emote_connection.py", line 466, in execute
    return self._request(command_info[0], url, body=data)
  File "D:Anaconda3libsite-packagesseleniumwebdriver
emote


emote_connection.py", line 490, in _request
    resp = self._conn.getresponse()
  File "D:Anaconda3libhttpclient.py", line 1331, in getresponse
    response.begin()
  File "D:Anaconda3libhttpclient.py", line 297, in begin
    version, status, reason = self._read_status()
  File "D:Anaconda3libhttpclient.py", line 258, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "D:Anaconda3libsocket.py", line 586, in readinto
    return self._sock.recv_into(b)
ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接。

之后继续百度寻找答案,才发现:
再使用selenium打开chrome浏览器的时候,需要用chromedriver,而chromedriver与
chrome的版本也是要相互适宜的,对应关系如下:

chromedriver版本 支持的Chrome版本
v2.36 v64-66
v2.35 v62-64
v2.34 v61-63
v2.33 v60-62
v2.32 v59-61
v2.31 v58-60
v2.30 v58-60
v2.29 v56-58

所以,先在浏览器地址栏输入:chrome://version
得到浏览器的版本,之后找到对应的chromedriver版本,并下载。
下载链接是:

原文地址:https://www.cnblogs.com/whist/p/8919748.html