Ответы пользователя по тегу Selenium
  • Как нажать на кнопку "см. ещё" в вакансиях inkedin с помощью selenium?

    nullnull
    @nullnull
    Я вам подкину парочку мыслей, вдруг что-то получится:

    1. Сейчас веб-фреймворки эти id генерируют на лету, т.е. динамический id получается. Либо другой XPath использовать, либо селекторы, либо XPath по типу "//путь до элемента/тег[contains(@id, "ember")]".Такая же проблема может быть с классами (там где используются числа или же какие-то непонятные символьные генерации).

    Чтобы проверить что видит selenium: просто запустите в дебаге, поставьте точку остановки и f12 (или ctrl + shift + c) по коду элемента в браузере. Возможно, вы увидите, почему клик не отрабатывает.
    Так же вы можете в браузере запустить поиск по XPath (зайти в просмотр кода элемента f12 и там уже ctrl + f) и проверить - корректный ли XPath для selenium.

    2. Возможно wait_and_click работает не совсем так. Однажды у меня была такая история, когда это ожидание не работало. Голову сломала, но хорошего решения не нашла. Оказалось, самое простое, что могло бы прийти в голову, помогло. Я сделала цикл while и в нём в течение 5-10 секунд пыталась нажать, если не нажимается, а я точно знаю, что такая кнопка на странице есть, то я делала питоновский time sleep(1).
    Проблема была в том, что библиотеки для отработки кнопки прилетали позже, возможно фоном, хотя страница загружена, JS тоже.
    Ответ написан
    Комментировать