2

在一个自动化的过程中,我正在使用新的无头 Chrome selenium,大约 5-10% 的比例,我得到了一个WebDriverException.

此函数在Chrome调用时引发异常:

def get_headless_browser(maximize_window=True):

    chrome_options = Options()
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--disable-gpu")
    if maximize_window:
        chrome_options.add_argument("--start-fullscreen")
        chrome_options.add_argument("--window-size={width},{height}".format(width=DEFAULT_RES[0],
                                                                            height=DEFAULT_RES[1]))
    chrome_options.binary_location = CHROME_BINARY

    browser = webdriver.Chrome(executable_path=CHROMEDRIVER,
                               chrome_options=chrome_options)  # <-- EXCEPTION RAISED HERE

    if maximize_window:
        browser.maximize_window()

    return browser

我得到的例外:

WebDriverException:消息:会话未从无法访问的 chrome 创建异常(会话信息:无头 chrome=59.0.3071.115)
(驱动程序信息:chromedriver=2.30.477691(6ee44a7249x639z0703f292d314edf05c1531b57),平台=Linux 4.4.0-1020-aws x86_64)

另外,我不得不提一下,这段代码运行在一个 36 核 EC2 实例上,并且这个函数使用所有内核并行运行。我试过把它切成 16/8 核,同样的问题发生了。

异常层次结构:

  • 错误:JoblibWebDriverException
    • (子进程回溯) WebDriverException (上面的异常)
4

0 回答 0