Web抓取with selenium在我的mac本地机器上运行良好,但当我推送到Ubuntu服务器时,我得到以下错误
Could not get version for Chrome with this command: google-chrome --version || google-chrome-stable --version
当我试图运行
from webdriver_manager.chrome import ChromeDriverManager
chrome_options = Options()
chrome_options.add_argument("--headless")
driver = webdriver.Chrome(ChromeDriverManager().install(), options=chrome_options)
代码部署在AWS ec2实例上
可能:你没有googlchrome或者你的操作系统不知道它。我建议你使用chrome浏览器。
如果你想通过webdriver-manager下载Chromium webdriver的解决方案:
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.utils import ChromeType
webdriver.Chrome(ChromeDriverManager(chrome_type=ChromeType.CHROMIUM).install()
正如@gore在评论中所说,在ubuntu服务器上安装chromium-chromedriver为我工作
Ubuntu 20.04
pip install selenium
sudo apt-get update
sudo apt install chromium-chromedriver
如果您正在使用Chromium,请尝试安装Google Chrome而不是使用Chromium。据我所知,selenium是为Chrome设计的。这里有另一个相关的主题:使用Chromedriver制作程序,得到错误:"无法使用此命令获得Chrome版本">
像这样试试
options = webdriver.ChromeOptions()
给你另一个提示http://chromedriver.chromium.org/capabilities