Enviar llaves que no funcionan Selenio webdriver python

Necesito enviar un texto a la descripción textarea. Hay un texto predefinido que se borra después de hacer clic. Intenté usar clear () o click () antes de sendkeys pero nada funciona correctamente. Enviará texto allí, pero aún está en gris y, después de guardar la página, hay un error que indica que no hay texto en la descripción … ¿Puedo usar otra cosa en lugar de enviar claves? Gracias

Textarea se parece a:

 

send_keys no funciona

 self.driver.find_element_by_id('manage_description').send_keys("TEST") 

introduzca la descripción de la imagen aquí

Como mencionó que send_keys("TEST") no funciona, hay un par de alternativas para enviar una character sequence a los campos respectivos como se menciona a continuación:

  1. Use Keys.NUMPAD3 [simulando send_keys("3") ]:

     login.send_keys(Keys.NUMPAD3) 
  2. Utilice JavascriptExecutor con getElementById :

     self.driver.execute_script("document.getElementById('login_email').value='12345'") 
  3. Utilice JavascriptExecutor con getElementsById :

     self.driver.execute_script("document.getElementsById('login_password')[0].value='password'") 

Ahora que hemos llegado a su problema específico, como mencionó I tried to use clear() or click() before sendkeys but nothing works correctly , así que I tried to use clear() or click() before sendkeys but nothing works correctly ayuda de javascript para click() en el área de texto para borrar el predefined text y luego use send_keys para rellenar el campo de texto de la siguiente manera:

 self.driver.execute_script("document.getElementById('manage_description').click()") self.driver.find_element_by_id('manage_description').send_keys("TEST") 

Actualización:

Como mencionó a veces, a veces no funciona, por lo que sugeriría lo siguiente:

  1. Induce ExplicitWait para que se pueda hacer clic en textarea .
  2. Usa javascript para enviar el text dentro del área de textarea también.
  3. Su código se verá como:

     my_string = "TEST"; elem = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "manage_description"))) self.driver.execute_script("document.getElementById('manage_description').click()") self.driver.execute_script("arguments[0].setAttribute('value', '" + my_string +"')", elem);