Задать вопрос
@Gusik1984
Самозванец)

Как создать всплывающее окно с кнопкой, закрепленное внизу экрана?

Друзья, нужна помощь.
Имеем скрипт на питоне, который с помощь Selenium, на стороннем сайте заполняет форму. Задача такая: когда алгоритм доходит до определенного блока, нужно, чтобы он встал на паузу и дал возможность заполнить его от руки. Т.е. в этот момент должна появиться кнопка "Продолжить". В идеале, я хочу, чтобы появлялось всплывающее и закрепленное окно с кнопкой. Я не силен в JS, пока смог только создать саму кнопку, но она хрен пойми где появляется.

self.driver.get('https://yandex.ru')
self.driver.execute_script("var value = true; var btn = document.createElement('button'); var textInBtn = document.createTextNode('ПРОДОЛЖИТЬ'); btn.appendChild(textInBtn); if(value){document.body.appendChild(btn)};")


Буду очень признателен за помощь.
  • Вопрос задан
  • 442 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@1001001
Ну как минимум вы привязываетесь не к тому элементу. У вас странная задача)
Тут больше подойдет чекбокс, еще его надо привязать к елементу вот тут: var btn = document.getElementById('wd-_teaser');
def something:
        driver = webdriver.Chrome()
        driver.get('https://yandex.ru')
        driver.execute_script(
            "var btn = document.getElementById('wd-_teaser');"
            "var checkbox = document.createElement('input');"
            "var label = document.createElement('label');"
            "label.appendChild(document.createTextNode('GOOD'));"
            "checkbox.type = 'checkbox';"
            "checkbox.id = 'randomID';"
            "btn.appendChild(checkbox);"
            "btn.appendChild(label);")

        element = driver.find_element_by_id("randomID")
        while not element.is_selected():
            time.sleep(2)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@alekssamos
Программист любитель
Да вон в консоле input() напиши и всё.
Или проверяй URL страницы в цикле. Если он отличается от старого, вручную заполнили форму и нажали кнопку, тогда продолжай.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы