Selenium, Python

#python #selenium

#python #селен

Вопрос:

Моя цель — заставить selenium вводить текст в текстовое поле, я не могу заставить его работать, и он не выдает никаких результатов, поэтому я понятия не имею, где что-то не так.

 fname = driver.find_element_by_name("fname")
fname.send_keys("Johnathon")
lname = driver.find_element_by_name("lname")
lname.send_keys("Morris")
email = driver.find_element_by_name("email")
email.send_keys("JohnMorris@gmail.com")
email.send_keys(Keys.RETURN)
  

Это код моего скрипта.

 <input type="text" name="fname" class="styles_input__TJVdS styles_themeLight__1SJ2R styles_textInput__3dAOE" placeholder="First Name" spellcheck="false" value="">

<input type="text" name="lname" class="styles_input__TJVdS styles_themeLight__1SJ2R styles_textInput__3dAOE" placeholder="Last Name" spellcheck="false" value="">

<input autocapitalize="off" type="text" name="email" class="styles_input__TJVdS styles_themeLight__1SJ2R styles_textInput__3dAOE" placeholder="Email" inputmode="email" spellcheck="false" value="">
  

Это HTML-код для сайта, скрипт находит элементы по имени, что кажется правильным, любая помощь будет принята с благодарностью.

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

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

2. вы можете определять элементы по имени и имени класса, и я определил их по имени, так что разве имя класса не должно иметь к этому никакого отношения?

3. можете ли вы добавить print оператор, чтобы убедиться, что переменные не равны null?