我正在尝试使用Python3从WSL2(Ubuntu18.04)无头打开Chrome
在Windows上,我使用的是Chrome84。我已经从ChromeDriver-WebDriver下载了Chrome驱动程序84。并将.exe安装在C:\ChromeDriver\ChromeDriver.exe下
我已经设置了从Windows Chrome和ChromeDriver到WSL2的符号链接:
sudo ln-s'/mnt/c/Program Files(x86)/Google/Chrome/Application/Chrome.exe'/usr/bin/Google-Chrome
sudo ln-s/mnt/c/ChromeDriver/ChromeDriver.exe/usr/bin/ChromeDriver
这两个色度都设置为可由WSL2上的任何用户执行
在WSL2上,当我在控制台中输入时:
谷歌浏览器——使用gl=swiftshader
Chrome在windows上启动
这是我的剧本:
来自selenium import webdriver的
browser=webdriver.Chrome()#失败
#browser=webdriver.Chrome('/usr/bin/chromedriver')失败
#browser=webdriver.Chrome('/mnt/c/ChromeDriver/ChromeDriver.exe')失败
browser.get('https://stackoverflow.com')
它失败并出现错误:
引发WebDriverException(“无法连接到服务%s)”
self.path)selenium.common.exceptions.WebDriverException:消息:Can
未连接到服务chromedriver(*或/usr/bin/chromedriver或/mnt/c/chromedriver/chromedriver.exe,具体取决于启动webdriver.Chrome()的方式)
如何使用python3和selenium从WSL2启动Chrome驱动程序
对于那些尚未找到解决方案的人。
遵循本教程:WSL2中的chromedriver
很多都是相似的,但我的诀窍是将chromedriver放在相应的组和用户中:
sudo chown root:root/usr/bin/chromedriver