【问题标题】:Selenium Python: Empty cache in headless mode for chrome driverSelenium Python:chrome驱动程序的无头模式下的空缓存
【发布时间】:2020-09-20 14:08:08
【问题描述】:

我正在尝试使用以下代码在无头模式下清空缓存:

def clear_cache(driver, timeout=60):
"""Clear the cookies and cache for the ChromeDriver instance."""
    driver.get('chrome://settings/clearBrowserData')
    driver.find_element_by_xpath('//settings-ui').send_keys(Keys.ENTER)

它在正常模式下工作,但是当我激活无头模式时,我收到以下错误:

消息:没有这样的元素:无法找到元素:{"method":"xpath","selector":"//settings-ui"} (会话信息:headless chrome=85.0.4183.102)

【问题讨论】:

    标签: python selenium caching selenium-chromedriver


    【解决方案1】:

    Chrome 设置包含阴影元素,所以我猜您将无法使用 XPath 直接单击元素。您可以使用下面的 JavaScript 来实现相同的目的。

    javaScript = "document.querySelector("body > settings-ui").shadowRoot.querySelector("#main").shadowRoot.querySelector("settings-basic-page").shadowRoot.querySelector("#basicPage > settings-section:nth-child(8) > settings-privacy-page").shadowRoot.querySelector("settings-clear-browsing-data-dialog").shadowRoot.querySelector("#clearBrowsingDataConfirm")"
    driver.execute_script('arguments[0].click();', javaScript)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-04
      • 2023-02-10
      • 2020-11-30
      • 2020-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-11
      相关资源
      最近更新 更多