Когда я пытаюсь выполнить код, показанный ниже, я получаю сообщение об ошибке:
TypeError: 'str' object is not callable
email2_elem = driver.find_element_by_xpath("/html/body/div[1]/div[2]/div[1]/div[1]/div[1]/form[1]/div[1]/input[1]").text()






text — это свойство, а не функция. Используйте его без ()
element.text
Кстати, абсолютный xpath"/html/body/..." — плохой подход, он делает локатор хрупким. Вы должны попытаться найти элементы по уникальному атрибуту (id, name, class и т. д.) или хотя бы относительному xpath.
Это сообщение об ошибке...
TypeError: 'str' object is not callable
... подразумевает, что ваша программа вызвала function(), который на самом деле является property.
Согласно selenium.webdriver.remote.webelementtext является property.
Итак, вы не можете вызывать text() как функцию. Следовательно, вы видите ошибку.
Вы можете использовать любое из следующих решений:
email2_elem = driver.find_element_by_xpath("/html/body/div[1]/div[2]/div[1]/div[1]/div[1]/form[1]/div[1]/input[1]").text
Используйте метод get_attribute("innerHTML"):
email2_elem = driver.find_element_by_xpath("/html/body/div[1]/div[2]/div[1]/div[1]/div[1]/form[1]/div[1]/input[1]").get_attribute("innerHTML")
@ szymond45 Да, имхо, get_attribute("innerHTML") намного перспективнее.
второй метод с get_atribute делает то же самое, что и просто текст?