Мне нужно использовать Selenium для очистки данных с веб-сайта, и после того, как вы установили селен и добавили драйвер chrome в мои PATH, я получаю сообщение об ошибке. Вот мой код:
from selenium import webdriver
driver = webdriver.Chrome('https://secure.consumerreports.org/ec/login')
username = driver.find_element_by_id("signin-username")
password = driver.find_element_by_id("signin-password")
username.send_keys("[email protected]")
password.send_keys("pa$$w0rd")
driver.find_element_by_id('signin-btn').click()
print('Login complete.')
И я получаю:
WebDriverException: 'login' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
Просто чтобы убедиться, что я установил селен через терминал, который был успешным, и я загрузил драйвер chrome для mac (https://sites.google.com/a/chromium.org/chromedriver/downloads), разархивировал его, и вставил сам драйвер в мои PATH. Я ввел echo $PATH
в терминал и напечатал: /Users/[my name]/anaconda/bin: /usr/local/bin: /usr/bin: /bin: /usr/sbin: /sbin: /Library/TeX/texbin
. Мне не разрешалось вставлять драйвер в /usr/bin
, /bin
, /usr/sbin
и /sbin
, но другие PATH были в порядке.
Основываясь на сообщении об ошибке, мне кажется, что мне нужно загрузить какой-то "логин", чтобы иметь возможность войти в систему. Мне не удалось найти такой драйвер.
Я новичок в Selenium, и я не уверен, что делать дальше. Любые рекомендации будут высоко оценены.
путь, который вы webdriver.Chrome()
должен быть webdriver.Chrome()
исполняемого файла или ничего, если вы уже предоставили правильную папку в своих PATHS.
Затем вы используете метод, get
доступ к URL-адресу, который вы хотите очистить
driver = webdriver.Chrome(executable_path="path/to/chromedriver")
driver.get('https://secure.consumerreports.org/ec/login')
Ответ, приведенный выше, верен. Вы должны указать путь к ChromeDriver, который вы загрузили из упомянутой выше ссылки.
Например, создайте имя папки ChromeDriver на рабочем столе и разархивируйте исполняемый файл там. Затем укажите путь как
chrome_path = '/Users/[yourname]/Desktop/chromedriver_mac64/chromedriver'
driver = webdriver.Chrome(chrome_path)