我尝试通过 Selenium 打开 Firefox,但失败了。它在 Chrome 上工作得很好,但当我尝试 Firefox 时,我无法让它工作。尝试创建 webdriver 对象时失败,抛出 selenium.common.exceptions.WebDriverException: Message: invalid argument: can't Kill an exited process
我执行的代码是:
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
import time
import json
import os
if __name__ == "__main__":
driver = webdriver.Firefox(executable_path='./geckodriver')
geckodriver 文件与 python 文件位于同一文件夹中。
网上搜索后发现可能是geckodriver和Firefox版本不兼容的原因,但我有Firefox 72.0.1-64位并使用geckodriver v0.26.0-linux64。
编辑:我发现从终端正常运行时不会出现该问题,但仅在从 VSCode 终端运行 python 代码时才会出现该问题。有什么办法可以解决这个问题吗?
最佳答案
尝试将{全局参数}
和{一些函数}
注释掉来运行它。
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
import time
import json
import os
#{global parameters}
#{some functions}
if __name__ == "__main__":
driver = webdriver.Firefox(executable_path=r'C:\\Path\\To\\geckodriver.exe')
我可以通过 cd 到文件位置并运行 python file_name.py 来从命令行执行此文件,假设上面的文本位于名为的文件中file_name.py
。
对于这个问题的提问者来说,尝试从 VSCode 终端运行它并没有成功。
关于python - 从 VSCode 运行时尝试通过 Selenium 打开 Firefox 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59757424/