Selenium Webdriver с использованием опции по умолчанию никогда не возвращается, если открыто существующее окно Chrome

Итак, я уже открыл Google Chrome, где я делаю свою собственную работу. Я пытаюсь запустить драйвер Селена Chrome, используя настройки по умолчанию, хранящиеся в моем C:\\Users\\Himanshu Poddar\\AppData\\Local\\Google\\Chrome\\User Data ddirectory. Но когда я запускаю Chrome с использованием этого профиля по умолчанию, моя функция никогда не возвращает, что, я думаю, связано с моим другим окном Chrome, над которым я работаю. Потому что я вижу предупреждение, появляющееся в моем рабочем окне Chrome, которое гласит: "Chrome управляется тестовым программным обеспечением".

Вот что я пробовал

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument("user-data-dir=C:\\Users\\Himanshu Poddar\\AppData\\Local\\Google\\Chrome\\User Data")
chrome_path = r"C:\Users\Himanshu Poddar\Desktop\chromedriver.exe"
# This never returns
wd = webdriver.Chrome(chrome_path, chrome_options=options)

Последний исполняемый оператор webdriver.Chrome никогда не возвращается и выводит его на консоль

[5972:6048:0614/210846.434:ERROR:cache_util_win.cc(21)] Unable to move the cache: 0
[5972:6048:0614/210846.435:ERROR:cache_util.cc(141)] Unable to move cache folder C:\Users\Himanshu Poddar\AppData\Local\Google\Chrome\User Data\ShaderCache\GPUCache to C:\Users\Himanshu Poddar\AppData\Local\Google\Chrome\User Data\ShaderCache\old_GPUCache_000
[5972:6048:0614/210846.435:ERROR:disk_cache.cc(185)] Unable to create cache
[5972:6048:0614/210846.435:ERROR:shader_disk_cache.cc(623)] Shader Cache Creation failed: -2
Opening in existing browser session.

Что ожидалось:

Будет запущен другой экземпляр Chrome с тем же профилем по умолчанию, который не зависит от моего текущего окна Chrome, над которым я работаю.

Любая помощь будет высоко ценится. Обратите внимание, что я попробовал все предложения, которые я получил по этому вопросу, и ни одно из них не сработало для меня.

РЕДАКТИРОВАТЬ: Эта проблема несколько похожа на мою, но не содержит решения этой проблемы.

1 ответ

Благодаря @pcalkins я смог найти ответ на вопрос. Самым первым шагом было клонирование вашего профиля пользователя или чего-то еще в C:\\Users\\Himanshu Poddar\\AppData\\Local\\Google\\Chrome\\User Data и переименуйте его с некоторым именем. В моем случае я просто переименовал его с данными пользователя - Копировать. Следующий шаг включает в себя удаление файлов, которые наш текущий пользователь, который использует Google Chrome (в другом окне) из нашей клонированной копии. Наконец, запустите код как

from selenium.webdriver.chrome.options import Options
from selenium import webdriver
chrome_path = r"C:\Users\Himanshu Poddar\Desktop\chromedriver.exe"
options = Options()
# new clone copy of user data supplied
options.add_argument("user-data-dir=C:\\Users\\Himanshu Poddar\\AppData\\Local\\Google\\Chrome\\User Data - copy")
wd = webdriver.Chrome(chrome_path, chrome_options=options)

Обратите внимание, что в этом случае обновление моего драйвера не требовалось, но всегда полезно работать с последней стабильной версией программного обеспечения, которая знает, с какой проблемой зависимости вы можете столкнуться.

Хотя я клонировал профиль и затем предоставил его для своей функции. Любой ответ, который не требует, чтобы копия была сгенерирована и решает ее, просто включая, настраивая, скручивая любой параметр, будет принят.

Другие вопросы по тегам