Как заполнить форму Facebook «что у тебя на уме?», используя selenium с Python

#python #selenium #selenium-webdriver #automation #webdriver

#python #селен #selenium-webdriver #автоматизация #webdriver

Вопрос:

Я провожу простое тестирование веб-автоматизации. Я пытаюсь написать что-нибудь на facebook textare «Что у тебя на уме?». HTML-код, который мне нужно заполнить, — это текстовая область с заполнителем «Что у тебя на уме?». Я получаю доступ к странице на изображении ниже, и это код, который я пробовал:

 driver.find_element_by_xpath("//textarea").send_keys('ciao')
 

И это ошибка, которую я получил:

 selenium.common.exceptions.ElementNotInteractableException: Message: Element <textarea id="composer-placeholder-textarea" class="_5whq input _3gik" name="xc_message"> is not reachable by keyboard
 

Я использую этот пользовательский агент:

 'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.2 Safari/537.36'
 

И это окно, в котором находится текстовое поле:
введите описание изображения здесь

Как это исправить?

Ответ №1:

попробуйте это решение :

 driver.get("https://www.facebook.com/")
x=driver.find_element_by_xpath("//div[@id='mount_0_0']/div/div/div/div[3]/div/div/div/div/div/div[2]/div/div/div[3]/div/div[2]/div/div/div/div/div/div/span").click()
x.send_keys('ciao')
 

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

1. к сожалению, в нем говорится «невозможно найти элемент»

Ответ №2:

Я, наконец, получил решение. На странице есть две текстовые области, одна не прокручивается в поле зрения, а другая, которая нас интересует. Нам нужно взаимодействовать со вторым, в моем случае с текстовой областью, которая имеет идентификатор

 uniqid_1
 

вместо этого текстовое поле, которое меня смущало, имеет следующий идентификатор:

 composer-placeholder-textarea