Как нажать на кнопку и спарсить html код на Python?

Всем добрый день. Есть парсер на Python, который открывает эту страницу https://yandex.ru/chat/#/

закрывает всплывающие окна и парсит html код страницы. Но он не работает, возникает ошибка:

Traceback (most recent call last):
  File "C:/Users/user/PycharmProjects/project/parse_youtube.py", line 27, in <module>


Подскажите, как её исправить?

Ответы (1 шт):

Автор решения: Roman Konoval

Так как кнопка с куки появляется не всегда, то программа должна это учитывать. Тут есть одна тонкость, что нельзя просто проверить в начале, есть ли кнопка в окне с куки, т.к. ее может еще не быть, а потом она появится.

Есть несколько вариантов:

  1. ждать кнопку в окне с куки, если по таймауту не дождались, считать, что окно куки при этом запуске не появилось и его закрывать не нужно и продолжать дальше.
  2. сначала пробовать нажать на кнопку закрытия. Если по таймауту не получилось, проверить есть ли окно куки и закрыть если есть.
  3. сделать цикл, который будет работать максимум 10 секунд, и в цикле проверять сразу два условия и действовать в зависимости от того, какое выполняется:
    • кнопка закрытия диалога доступна для нажатия (можно просто пробовать нажимать и если удается - выходить из цикла, а если нет, то игнорировать исключение и проверять второе условие)
    • отображается окно куки (если отображается - закрывать)
→ Ссылка