在Linux环境中无法使用Chromedriver和Selenium创建新的浏览器会话

时间:2019-04-15 13:29:06

标签: python-3.x google-chrome selenium-webdriver

许多人都试图在org.openqa.selenium.WebDriverException: unknown error: DevToolsActivePort file doesn't exist while trying to initiate Chrome Browser中回答它,但是除非我添加--headless选项,否则所有解决方案似乎都不起作用。

环境详细信息

    selenium==3.141.0
    Google Chrome 73.0.3683.103
    Driver Used -- 73.0.3683.68 -- chromedriver_linux64.zip
    OS -- Linux 16.04
    Python -- 3.5.2

我面临的错误如下:

selenium.common.exceptions.WebDriverException:消息:未知错误:Chrome无法启动:异常退出

(未知错误:DevToolsActivePort文件不存在)

(从chrome位置/ usr / bin / google-chrome开始的进程不再运行,因此ChromeDriver认为Chrome崩溃了。)

(驱动程序信息:chromedriver = 73.0.3683.68(47787ec04b6e38e22703e856e101e840b65afe72),platform = Linux 4.4.0-17134-Microsoft x86_64)

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    import time

    options = webdriver.ChromeOptions()
    options.add_argument("start-maximized")
    options.add_argument("--no-sandbox")
    # options.add_argument("--headless")
    options.add_argument("--disable-gpu")
    options.add_argument("--disable-dev-shm-usage")
    options.add_argument("-window-size=1400,1400")

    driver = webdriver.Chrome(executable_path='/usr/local/bin/chromedriver',options=options)

    driver.get('https://www.google.com')
    driver.maximize_window()
    print(driver.page_source)
    driver.quit()

1 个答案:

答案 0 :(得分:-1)

我不确定代码,但这是带破折号的错字。

options.add_argument("-window-size=1400,1400")

此外,我认为您也需要在最大化开始位置前添加破折号。

编辑:我检查了geckodriver,它似乎没有问题运行,也许尝试使用chrome_options而不是options,但是除此之外,我不知道。

Edit2:该行将打开一个空白页面,您无法获取其源代码。尝试清理您的代码,它似乎是来自各种来源的复制粘贴。 另外,start-maximized已经可以使用maximate_window,但是我不确定start-maximized是否可以在chromedriver中使用,因此请尝试仅使用其中一种。