Я хочу добавить текст с помощью .send_keys () к вводу текстового поля, но после файла изображения.
Однако по некоторым причинам Selenium добавляет текст всегда передфайл изображения, несмотря на то, что я добавил файл изображения перед отправкой текстового ввода.
Например:
image_button.send_keys(IMAGE_FILEPATH)
textfield.send_keys("text to insert")
Кнопка image_ является входом тег, который я получил через драйвер экземпляр, и он расположен перед текстовым полем.После отправки файла изображения с помощью метода .send_keys () он отображается в текстовом поле.
Однако я не уверен, как добавить текст после изображения натекстовое поле.Возможно ли это?
Ниже приведен скриншот, и код выглядит примерно так:
front_textfield, back_textfield = driver.find_elements_by_xpath("//div[@class='richEditor']")
image_front_button, image_back_button = driver.find_elements_by_xpath("//input[@accept='image/*']")
audio_front_button, audio_back_button = driver.find_elements_by_xpath("//input[@accept='audio/*']")
image_front_button.send_keys(image_file)
front_textfield.send_keys(text_front)
audio_front_button.send_keys(audio_file)
Я попытался запустить каждый код один за другим на своем ноутбуке Jupyter, но все равно не получилось.
Вот событие, связанное с текстовым полем:
Хммм, одним из обходных путей является добавление следующего кода, который перемещает курсор в текстовое поле.
image_front_button.send_keys(image_file)
for i in range(2):
front_textfield.send_keys(Keys.ARROW_DOWN)
front_textfield.send_keys(Keys.ARROW_RIGHT)
front_textfield.send_keys(text_front)