Я пытаюсь использовать бота с Selenium для ввода электронной почты и пароля. Использование веб-сайта Best Buy.

В настоящее время это блок кода, который у меня есть:

browser.find_element_by_xpath("/input[@id='fld-e']").send_keys("EMAIL@gmail.com")

Тем не менее, когда я действительно запускаю программу, никакие данные не отправляются. Вот HTML-код, прикрепленный к блоку электронной почты, а также XPath, который я извлек из расширения Chrome: Я пробовал использовать .find_element_by_class_name ("fld-e")

<input class="tb-input " type="email" autocomplete="off" id="fld-e" name="fld-e" placeholder="" required="" value="">

/html/body/div[@class='cia-app-container']/div[@class='cia-actual-full-page-wrapper lv']/section[@class='cia size-l cia--two-column-v2']/main[@class='cia-wrapper container']/div[@class='cia-wrapper__main']/div[@class='cia-content js-cia-content']/div[@class='cia-main-container']/div[@class='cia-settings-container']/div/div[@class='cia-signin']/form[@class='cia-form ']/div[@class='cdi-input cdi-wrapped-text']/div[@class='tb-input-wrapper   tb-input-wrapper-full-width']/input[@id='fld-e']

Любая помощь будет оценена, спасибо!

1
connor 4 Май 2021 в 00:22

1 ответ

Лучший ответ

Попробуйте этот xpath:

driver.find_element_by_xpath("//input[@type='email']")

Если это не сработает, добавьте в свой вопрос еще html-код, с которым вы работаете. Вы также можете попробовать driver.find_element_by_id("fld-e"), но я сомневаюсь, что это сработает.

Также подождите, пока поле не станет активным.

0
vitaliis 3 Май 2021 в 21:52