Я использую один веб-сайт, на котором я обновляю что-то вручную (например, обновляю имя_пользователя) и получаю мгновенное оповещение, которое исчезает в течение 5 секунд. Но когда я автоматизирую использование селена, флэш-оповещение не появляется. Итак, моя задача состоит в том, как обработать/получить текст из оповещения с помощью автоматизации.
Попробовал подход ниже,
- Во время автоматизации был получен полный дамп HTML DOM и проверено, получает ли HTML-код оповещения JS или нет. >> Но в дампе DOM я не вижу этот код оповещения.
- Я попробовал записать видео оповещения вручную и обнаружил, что код отображается в DOM.
- Я попробовал js executor, чтобы получить текст предупреждения, но безуспешно.
Код: Выделить всё
flash_message_text = self.driver.execute_script("document.getElementById('alertFlash').textContent") print(flash_message_text)
Код: Выделить всё
def pop_up(self):
self.driver.get("URL")
self.driver.find_element(By.XPATH, "(//button[@class='btn edit-pen login-pass'])[1]").click()
self.driver.find_element(By.XPATH, "//input[@name='v2_user[name]']").clear()
self.driver.find_element(By.XPATH, "//input[@name='v2_user[name]']").send_keys("xyz")
self.driver.find_element(By.XPATH, "//input[@class='btn btn-base1']").click()
flash_message_text = self.driver.execute_script("document.getElementById('alertFlash').textContent")
print(flash_message_text)

screenshot captured manually when alert is appear

Источник: https://stackoverflow.com/questions/781 ... automation