如何在 IPython 中解决 Selenium 的 'Process unexpectedly closed with status 11'?

How to resolve 'Process unexpectedly closed with status 11' for Selenium in IPython?

我运行下面的代码在IPython(来自官方Python扩展VSCode):

# %%
from selenium import webdriver

driver = webdriver.Firefox(
    executable_path='.driver/geckodriver')

它给我以下错误:

WebDriverException: Message: Process unexpectedly closed with status 11
WebDriverException: Message: invalid argument: can't kill an exited process

我的设置:

Firefox: 82.0
GeckoDriver: 0.28.0
Selenium: 3.141.0
IPython: 7.19.0
Ubuntu: 20.10
Python3 venv

注意:此脚本在终端中有效,但在终端中无效IPython

谢谢。

根据您的描述,我在我的电脑上安装了与您相同的配置。当我运行.py文件中的代码和VSCode文件中的.ipynb文件时,可以显示结果:

建议您从以下几个方面进行检查:

  1. 确保Jupyter所需的内核“ipykernel”已经安装在您当前选择的VSCode环境中。

  2. 请检查代码中“geckodriver”的执行路径

  3. 请尝试重新加载VSCode或重新启动VSCode,如果条件允许,甚至重新启动计算机。

我在使用 Firefox 驱动程序时遇到了同样的问题,我将其更改为 Chrome 现在运行良好的驱动程序

# install chromium, its driver, and selenium
!apt update
!apt install chromium-chromedriver
!pip install selenium

# set options to be headless, ..
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')

# open it, go to a website, and get results
wd = webdriver.Chrome(options=options)
wd.get("https://www.website.com")

print(wd.page_source)  # results