Selenium WebDriver + Jsoup

256
07 декабря 2017, 00:18

Нужно вытащить расписание вот с этой страницы: http://ruz.spbstu.ru/faculty/98/groups.

В верхней части 6 кнопок, которые выполняют JS скрипт. И при нажатии которых, меняется расписание.

Что я сделал:

  • с помощью JSOUP вытащил расписание при нажатых кнопках "очная" + "бакалавр". Это просто т.к. они включены по дефолту.
  • потом с помощью Selenium нажал на кнопку "бакалавр". Да загрузился нужный фрейм с другим расписанием. Но адрес траницы тот же. И бесполезно его передавать в JSOUP для парсинга. Т.к. при загрузке в JSOUP я получу ту же страницу с дефолтно нажатыми кнопками, что и первый раз.

Вопрос:

  • как передать код страницы с нужным фреймом после нажатия на кнопки в JSOUP.
  • а если это невозможно, мне придется парсить дальше с помощью Selenium?
Answer 1

Вообщем разобрался сам. Передать код страницы проще простого , метод - getPageSource().

Как оказалось для парсинга страниц селениум не очень удобен. JSOUP в разы проще, да и быстрее. Так что, на мой взгляд, лучше использовать Selenium только для нажития кнопок, заполнение форм и прочее.

READ ALSO
Работа с таймером. Выполнить код через время

Работа с таймером. Выполнить код через время

ПриветствуюРаботаю в Android Studio

197
с++ define чем заменить в Java

с++ define чем заменить в Java

народ вот в С++ есть define а что в джаве чем заменит ?

229
Способ увеличение отрезка в два раза

Способ увеличение отрезка в два раза

У меня задание увеличить отрезок в два раза

229
EXTRA_SHORTCUT_INTENT deprecated в Android Oreo - чем заменить

EXTRA_SHORTCUT_INTENT deprecated в Android Oreo - чем заменить

Собственно говоря весь вопрос вынесен в заголовок

221