Selenium - Cant взаимодействует с веб-драйвером - PullRequest
0 голосов
/ 22 января 2019

Я пытаюсь загрузить определенный профиль Chrome с помощью веб-драйвера Python selenium, но я не могу взаимодействовать с драйвером после назначения профиля Chrome.он открывает профиль хрома, который я хотел, но оттуда - ничего.я не могу делать никаких действий.например - я пытаюсь открыть Microsoft.com:

Это работает:

from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://www.microsoft.com')

Но это не работает вообще:

from selenium import webdriver
import getpass
username = getpass.getuser()
options = webdriver.ChromeOptions() 
options.add_argument('user-data-dir=C:/Users/'+username+'/AppData/Local/Google/Chrome/User Data/')
driver = webdriver.Chrome(executable_path='C:/Users/'+username+'/Documents/selProject/chromedriver.exe', chrome_options=options)
driver.get('http://www.microsoft.com')

Приведенный выше код открывает Chrome, но не переходит на microsoft.com или любое другое действие.

спасибо за чтение!

Ответы [ 2 ]

0 голосов
/ 22 января 2019

Вы делаете следующие вещи и проверяете, работает ли это.Обновите привязки python, используя

pip install -U selenium

для браузера Chrome, загрузите последнюю версию драйвера Chrome "ChromeDriver 2.45" в форме http://chromedriver.chromium.org/downloads и напишите код

from selenium import webdriver
driver=webdriver.Chrome("Path of the Chromedriver" + "chromedriver.exe" )
driver.get('http://www.microsoft.com')
0 голосов
/ 22 января 2019

Вероятно, это связано с тем, что у вас уже открыт Chrome с тем пользователем, который вошел в систему.

Чтобы использовать Chrome с этим профилем, а также при запуске сценария вам потребуется разделить каталоги, в которых находятся профили.вытащил из.То есть переместите (или скопируйте) профиль Default в другой каталог, к которому вы обращаетесь в аргументе user-data-dir.

...