gpt4 book ai didi

selenium-chromedriver - 无法在 Chrome v76 中隐藏 “Chrome is being controlled by automated software” 信息栏

转载 作者:行者123 更新时间:2023-12-03 16:38:26 36 4
gpt4 key购买 nike

这不是一个真正的新问题,也不是原始问题的答案,而是要求澄清,因为原始问题的答案不完整,但任何澄清请求都会被删除......

原帖在这里... Unable to hide "Chrome is being controlled by automated software" infobar within Chrome v76

因此,虽然我理解您的原始答案,但我们不使用 Chrome 的托管实例,而且我们都在 Windows 10 家庭版上运行......因此,您的答案设置不是我们的选择。另一方面,我们所有的回归测试现在都失败了,因为这个愚蠢的横幅阻碍了一切。

运行 Windows 10 家庭版的非 IT 管理用户是否可以取消此横幅?

如果没有,谷歌如何期望我们继续使用 Chrome 进行测试?非常感谢任何建议......另外,我正在使用 Python,所以如果你提供代码示例,请记住这一点......这是我目前正在做的事情,它在上周之前工作,但现在不工作。 ..

options = webdriver.ChromeOptions()

options.add_argument('--start-maximized')
options.add_argument("--disable-infobars")
options.add_argument("--disable-extensions")
options.add_argument("--disable-automation")

options.add_argument("--log-level=3")
# options.add_argument('headless')
options.add_argument('window-size=1920x1012')
options.add_experimental_option("prefs", {"download.prompt_for_download": False})
options.add_experimental_option("prefs", {"plugins.plugins_list": [{"enabled": False, "name": "Chrome PDF Viewer"}]})
options.add_experimental_option("prefs", {"download.default_directory": os.path.abspath(context.BaseResultsDir + '/Downloads/')})
options.add_experimental_option("prefs", {"download.extensions_to_open": "applications/pdf"})
context.driver = webdriver.Chrome(chrome_options=options)

最佳答案

信息栏设置背后的原因可能是上周而不是本周仍然有效,可能是您更新/自动更新了 chromedriver 或 chromebrowser。但是,您禁用信息栏的设置不起作用,因为根据此 commit on - Jan 10 2018 , --disable-infobars选项已从 chrome 选项中删除

解决方案 - 保持这条线没有任何作用 options.add_argument("--disable-infobars")你可以删除它。

  • options.add_argument("--disable-automation")

  • 这条线在这里对解决方案造成了真正的困惑,因为有 2 种不同的方法来做到这一点(默认情况下,此开关已启用,我们必须将其删除以禁用信息栏)。此行禁用密码保存 UI 以获取更多详细信息 read this nice discussion
  • 使用此行通过排除启用自动化开关来禁用信息栏 -
    options.add_experimental_option("excludeSwitches" , ["enable-automation"])它在某种程度上解决了这个问题,当我尝试使用这个间歇性的开发人员代码插件弹出窗口并要求启用/禁用它时。它不会消失 options.add_argument("--disable-extensions")这个。如果您遇到同样的问题,请使用另一个开关禁用它,如下所示 -
  • options.add_experimental_option("excludeSwitches" , ["enable-automation","load-extension"])

  • 这从 root 解决了问题(加载扩展开关支持 Chromedriver v2.33 及更高版本)。但是,还有另一种方法可以禁用开发人员代码插件弹出窗口,您可以这样做 by adding --disable-plugins into shortcut of chrome
  • 如果这些解决方案对您不起作用,那么 chromium command line switches here可以帮助您自定义 chrome 行为

    另外ChromeDriver(Capabilities capabilities) is deprecated并且可以用作
    capabilities = DesiredCapabilities.CHROME.copy()
    capabilities.update(options.to_capabilities())
    driver = webdriver.Chrome(chromedriver, desired_capabilities=capabilities)

  • 中禁用信息栏的解决方案Java
    options.setExperimentalOption("excludeSwitches", Arrays.asList("enable-automation" , "load-extension"));

    将使用开发者代码插件禁用信息栏

    关于selenium-chromedriver - 无法在 Chrome v76 中隐藏 “Chrome is being controlled by automated software” 信息栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57362127/

    36 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com