Невозможно установить значение элемента ввода с помощью SeleniumPython

Программы на Python
Ответить
Anonymous
 Невозможно установить значение элемента ввода с помощью Selenium

Сообщение Anonymous »

Я пытаюсь обновить значение элемента ввода с помощью веб-драйвера Python и Selenium. Это в Windows 10 с использованием Edge. Страница загружается нормально, и я могу взаимодействовать с элементом с помощью клавиатуры и мыши, но когда я пытаюсь установить значение с помощью кода, я получаю ошибку «элемент не взаимодействует». Код:
from selenium import webdriver
from selenium.webdriver.common.by import By
edge_service = webdriver.EdgeService(executable_path=edge_driver_path)
edge_driver = webdriver.Edge(service=edge_service)
edge_driver.get(url)
time.sleep(15)
elements, macroponent_bs = edge_driver.find_elements(by=By.XPATH, value="//*"), None
for element in elements:
if element.tag_name.startswith("macroponent"):
macroponent_bs = element.tag_name
break
if macroponent_bs:
script = "return document.querySelector('" + macroponent_bs + "')" + \
".shadowRoot.querySelector('iframe')"
iframe = edge_driver.execute_script(script=script)
edge_driver.switch_to.frame(iframe)
element = edge_driver.find_element(by=By.ID, value=element_id)
print(f"Element value is >{element.get_attribute('value')}

Подробнее здесь: https://stackoverflow.com/questions/791 ... g-selenium
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»