我有一台windows笔记本电脑,我用python编写了一个selenium脚本,该脚本创建了一个github存储库。当运行python文件时,它工作得很好,但当我尝试从bash文件运行脚本时,它会给出错误。我该怎么办呢
我的bash文件:python3 login.py
我从bash中调用的python文件:
def login():
chr_options = Options()
chr_options.add_experimental_option("detach", True)
driver = webdriver.Chrome(ChromeDriverManager().install(), options=chr_options)
driver.get('https://github.com/new')
这是当我尝试用bash从我的ubuntu终端运行python文件时得到的结果,我有一台Windows机器,当我尝试从Windows终端运行python文件时,它工作得很好
selenium.common.exceptions.WebDriverException: Message: unknown error: cannot find Chrome binaryStacktrace:#0 0x55de662442a3
<unknown>#1 0x55de66002f77
<unknown>#2 0x55de66029047
<unknown>#3 0x55de660277d0 <unknown>#4 0x55de660680b7 <unknown>#5 0x55de66067a5f <unknown>#6 0x55de6605f903 <unknown>#7 0x55de66032ece <unknown>#8 0x55de66033fde <unknown>#9 0x55de6629463e <unknown>#10 0x55de66297b79 <unknown>#11 0x55de6627a89e <unknown>#12 0x55de66298a83 <unknown>#13 0x55de6626d505 <unknown>#14 0x55de662b9ca8 <unknown>#15 0x55de662b9e36 <unknown>#16 0x55de662d5333 <unknown>#17 0x7f87539e4b43 <unknown>
我有一台Windows 10笔记本电脑,其中我的selenium脚本工作正常,但是当我通过bash终端运行该文件时,它给出了这个错误
selenium.common.exceptions.WebDriverException: Message: unknown error: cannot find Chrome binary
Stacktrace:
#0 0x55de662442a3 <unknown>
#1 0x55de66002f77 <unknown>
#2 0x55de66029047 <unknown>
#3 0x55de660277d0 <unknown>
#4 0x55de660680b7 <unknown>
当你在windows中运行python文件时,它使用安装在windows机器中的Chrome,但是当你在bash终端中工作时,你在Linux机器上运行,在你的windows中作为虚拟机运行。
所以它是一个单独的机器,它不能使用Chrome从你的Windows。它需要有自己的Chrome浏览器。此外,这个虚拟机没有GUI,所以您需要在headless
模式下运行selenium。