Прокликать все кнопки на одной странице для разворачивания комментариев Liveinternet

Тема в разделе "WBAppCEF", создана пользователем Max3w, 15 дек 2020.

Метки:
  1. Max3w

    Max3w New Member Пользователи

    Регистрация:
    10 апр 2017
    Сообщения:
    28
    Добрый день, вопрос по WBapp, к примеру на странице Ссылки недоступны для гостей есть ветки свернутых комментариев.
    Надо их перебрать и прокликать.

    Выбрал все кнопки по XPath: //a[@target='_self'][contains(.,'Expand')]
    Жму проверить открывается первая ветка.

    Чтобы прокликать все кнопки разом использую стандартный цикл из примеров программы но с дописанным выбором по Xpath:

    Код:
    for(i = 0; i < document.all.length; i++)///Общий цикл перебора всех элементов WEB-страницы
    {
       if(document.all(i).find_element_by_xpath("//a[@target='_self'][contains(.,'Expand')]")) ///Поиск элемента Xpath почему то неработает?
       {
          document.all(i).click(); ///Выполнение действия клика, когда элемент найден
          alert("[JSMESSAGE]:YES"); ///Передать YES из скрипта в список событий
          break; ///Выход из цикла, когда элемент найден
       }
    }
    
    Вроде бы должно работать но не работает. В чем может быть причина? И второе что смущает это отсутствие кнопки поиска по Xpath в вариантах зацикливания, прикрепил картинку Javascript Manager.png. На ней только inner, класс, атрибуты. А Xpath нету. Вставил скрипт InnerHTML (не совсем понимаю что такое InnerHTML и как програмно его выбрать) и заменил его на Xpath. Так ведь должно работать?

    И второе, когда эта часть заработает вопрос в очередности скриптов, есть скрипт кликов и скрипт ожидания загрузки страницы. Прикрепил скриншот. Если первый скрипт кликов. Потом идет скрипт готовности загрузки страницы. Он не запустится пока не прокликается все ветки первым скриптом? Или запустятся сразу оба скрипта при такой записи?

    На всякий случай прикрепил файл проекта
     

    Вложения:

    Последнее редактирование: 15 дек 2020
  2. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.
     

    Вложения:

    Max3w нравится это.
  3. Max3w

    Max3w New Member Пользователи

    Регистрация:
    10 апр 2017
    Сообщения:
    28
    Большое спасибо. Этим скриптом все открывается отлично. Понял что innerHTML это название кнопки или содержимое.

     
  4. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
     
    Max3w нравится это.
  5. Max3w

    Max3w New Member Пользователи

    Регистрация:
    10 апр 2017
    Сообщения:
    28
    Спасибо! Если можно, пожалуйста в заголовке темы "комментариев Liveinternet" исправить на "комментариев Livejournal"

    Ваш скрипт прекрасно работает, но Livejournal еще продолжает делать день насыщенным...

    Когда дело доходит до страницы с 100 комментариями, к примеру Ссылки недоступны для гостей
    Процесс идет но потом загрузка останавливается. Тестировал, по другому определил готовность страницы по фреймам:

    [INSTANTACTIONS]
    [WAITFORMAINFRAMELOAD(10|20)]
    [DOSCRIPT]:ExpandAll
    [WAIT]:120000

    И дальше время ожидания даже ставлю фантастических 2 минуты но дальше он не догружает инфо. Пересел на пк помощнее но увеличение времени не догружает дальше страницу.

    Подскажите пожалуйста, в чем может быть причина остановки загрузки? После чего выдается сообщение что веб документ не удалось загрузить. И при предосмотре видно что скрипт отработал, стрелочки крутятся но данные больше +-после 70 данные не поступают.

    Чтобы понять в каком направлении двигаться, поможет ли циклом пройтись по кнопкам с интервалами или использовать другую библиотеку запросов, с какими параметрами программы рекомендуется выполнять такие действия если одновременный клик подгружает большой объем данных ?

    Если дело только во времени, то возможно ли выловить момент последней загрузки данных после клика? Не пойму к чему привязаться, дабы не ставить время всех страниц 2-3 минуты.
     

    Вложения:

    Последнее редактирование: 16 дек 2020
  6. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    В вашем проекте вроде все комментарии раскрыл.

    Их просто много и долго ждать нужно.
     
    Max3w нравится это.

Поделиться этой страницей