为什么chromedriver与chrome版本绑定



我开始使用硒和ChromeDriver来自动化Chrome中的任务。我有兴趣在多个管理的windows PC上扩展任务。

我知道Chrome的更新可能会破坏ChromeDriver的功能。但我担心这是正确的工具,因为基于chrome版本手动更新会导致大量维护,因为我们必须在每个系统上手动放置可执行文件。

ChromeDriver真的是";白名单";它适用于哪个chrome版本?为什么?

浏览器会有更新,驱动程序也必须有更新才能调用浏览器并与浏览器交互,因此您的驱动程序版本必须与浏览器版本同步。它不仅适用于Chrome,也适用于Firefox和Edge。你可以做的一件事是通过安装网络驱动程序管理器库来使用ChromeDriverManager。在Python中,您可以这样做:pip install webdriver-manager

在py文件中,您可以调用chromedriver:from webdriver_manager import ChromeDriverManager

然后,当您初始化驱动程序时,您可以传入ChromeDriverManager:driver = webdriver.Chrome(ChromeDriverManager().install())

这样,你的驱动程序和浏览器就会同步。您不必担心驱动程序浏览器版本不兼容。

请注意:使用上面的driver行代码,您将收到一个拆箱警告,为此您需要包含Service对象;但是,就目前而言,这是一个警告,而不是错误,所以您的代码不会阻碍执行,但迟早,您必须使用Service对象。

这是一篇很好的文章,你可以参考Medium

最新更新