Python 如何在无头模式下删除所有缓存历史记录

Python 如何在无头模式下删除所有缓存历史记录,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,**javascript错误:无法读取null的属性“shadowRoot” 代码很好用,但在无头模式下不起作用我想知道如何解决这个问题 **我会尝试类似的方法,在测试之前运行,并确保缓存已清除: from selenium import webdriver from selenium.common.exceptions import NoSuchElementException import os import inspect, sys import time from sys import

**javascript错误:无法读取null的属性“shadowRoot” 代码很好用,但在无头模式下不起作用我想知道如何解决这个问题


**

我会尝试类似的方法,在测试之前运行,并确保缓存已清除:

from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
import os
import inspect, sys
import time

from sys import platform
from time import sleep

from selenium.webdriver.support.ui import Select
import datetime
import random
from playsound import playsound
from selenium import webdriver
from selenium.webdriver.common.keys import Keys


chrome_options = webdriver.ChromeOptions()

chrome_options.add_argument("--headless")

chrome_options.add_argument("--disable-dev-shm-usage")
chrome_options.add_argument("--no-sandbox")

driver = webdriver.Chrome(executable_path=r'C:\chromedriver.exe', chrome_options=chrome_options)



driver.get('chrome://settings/clearBrowserData')
sleep(5)
"""
x = driver.find_element_by_id('dropdownMenu')
drop = Select(x)
drop.select_by_index(2)
time.sleep(4)
"""
clearButton = driver.execute_script("return document.querySelector('settings-ui').shadowRoot.querySelector('settings-main').shadowRoot.querySelector('settings-basic-page').shadowRoot.querySelector('settings-section > settings-privacy-page').shadowRoot.querySelector('settings-clear-browsing-data-dialog').shadowRoot.querySelector('#clearBrowsingDataDialog').querySelector('#clearBrowsingDataConfirm')")
#click on the clear button now
clearButton.click()

使用此参数:
--aggressive cache discard

此参数不提供问题的答案。若要评论或要求作者澄清,请在其帖子下方留下评论。-审阅者:请考虑是否添加<代码>攻击性缓存丢弃< /代码>作为OP代码的附加参数,可以在建议删除之前解决该问题。
def clear_cache(driver, timeout=60):
    driver.get('chrome://settings/clearBrowserData')
    wait = WebDriverWait(driver, timeout)

    get_clear_browsing_button(driver).click()

    wait.until_not(get_clear_browsing_button)