【问题标题】:Selenium Chrome instance with profile won't load site带有配置文件的 Selenium Chrome 实例不会加载站点
【发布时间】:2018-07-31 22:17:30
【问题描述】:

我正在按照this post 的说明使用我的个人资料来获取网站。它成功启动了 Chrome 实例,但在短时间内引发以下错误后它就停止并崩溃了:

selenium.common.exceptions.WebDriverException: Message: unknown error: 
Chrome failed to start: crashed
(Driver info: chromedriver=2.21.371459 (36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),platform=Windows NT 6.1 SP1 x86_64)

如果我不使用任何配置文件参数,它工作正常,所以我不确定问题出在哪里。我的代码:

def ChromeTest():
    options = webdriver.ChromeOptions()
    options.add_argument(
        "user-data-dir=C:\\Users\\myuser\\AppData\\Local\\Google\\Chrome\\User Data")
    driver = webdriver.Chrome(executable_path="C:\\Users\\chromedriver.exe", chrome_options=options))
    site = "http://www.google.com"
    driver.get(site)

【问题讨论】:

  • 请看我之前的回答,可能对你有帮助stackoverflow.com/questions/29225271/…
  • 感谢您的建议,但我已经研究了一段时间,仍然无法找出问题所在。 selenium chromedriver 启动的会话具有相同的配置文件和相同的 chrome 版本。它只是在 driver.get(site) 窒息。

标签: python-3.x selenium-webdriver


【解决方案1】:

现在可能是一个老问题,但我自己遇到了这个问题并来到这里,所以供将来参考:
在现有的 chrome 窗口打开时,使用 chrome 启动 selenium webdriver 似乎存在问题。
这是我的问题:Webdriver 没有继续执行其余的测试,而在后面我打开了另一个 chrome 窗口。在我关闭那个打开的窗口后,测试运行良好。
虽然已关闭,但已报告该问题:https://bugs.chromium.org/p/chromedriver/issues/detail?id=1123
最佳解决方案:要么通过测试关闭现有的 chrome 选项卡,要么在 VM 中进行测试,以免中断。

【讨论】:

  • 感谢发帖!尽管我不再致力于解决方案,但很高兴知道。
【解决方案2】:

是的,正如 Bar Margalit 指出的那样,关闭现有的 chrome 选项卡可以工作,但不能完全解决问题。特别是如果您想同时使用多个 Chrome 配置文件,您将再次遇到同样的问题。您可以做的是将所有相关的 Chrome 配置文件文件夹移动到不同的位置(并相应地更改代码中的目录)。这很简单,我在这里回答了同样的问题:

Cannot open two Google Chrome instances with different profiles using selenium web driver for Chrome in Python

我希望这对你有用。

【讨论】:

    猜你喜欢
    • 2021-11-26
    • 1970-01-01
    • 2014-11-04
    • 1970-01-01
    • 2020-08-20
    • 1970-01-01
    • 1970-01-01
    • 2018-04-18
    • 2013-01-06
    相关资源
    最近更新 更多