Python Selenium — очистка кэша Chrome

#python #selenium #headless-browser #clear-cache

#python #селен #безголовый браузер #очистить кэш

Вопрос:

Я пытаюсь очистить кеш из драйвера Chrome с помощью selenium.

Приведенный ниже код работал нормально в течение дня, и теперь он по какой-то причине перестал работать. Он перенаправляет на URL-адрес clearBrowserData, но не нажимает enter для запуска кнопки очистки данных. Я делаю что-то не так? Я был бы признателен за некоторую помощь в этом.

 from selenium import webdriver
from selenium.webdriver.common.keys import Keys

chromedriver = 'path'
browser = webdriver.Chrome(executable_path = chromedriver)
browser.get('chrome://settings/clearBrowserData')
browser.find_element_by_xpath('//settings-ui').send_keys(Keys.ENTER)
  

Комментарии:

1. вы можете ознакомиться с этой статьей для получения справки intoli.com/blog/clear-the-chrome-browser-cache

2. Я уже пробовал этот метод, но он не сработал, я получаю сообщение об ошибке, в котором говорится, что не удается найти элемент: /deep/ #clearBrowsingDataConfirm

3. Я попробовал ваш код, кажется, он работает. Возможно, ваше соединение может быть медленным. Для этого вы можете добавить webdriver. подождите, чтобы позволить вашему драйверу дождаться отображения кнопки. См. selenium-python.readthedocs.io/waits.html

Ответ №1:

beacuse shadowRoot

 <settings-clear-browsing-data-dialog>
 #shadow-root (open)
</settings-clear-browsing-data-dialog>
  

Комментарии:

1. Это не дает полезного ответа на вопрос, не так ли (показать обновленный код selenium / python для реализации рекомендаций pls)