Задать вопрос
@Alecxandrys

Почему Jsoup не выбирает все элементы?

День добрый,
Необходимо в проекте на Java собрать все ссылки в определённых элементов на странице.
Соответственно делается следующее:
Document doc = Jsoup.connect("https://www.vyatsu.ru/studentu-1/spravochnaya-informatsiya/raspisanie-zanyatiy-dlya-studentov.html").get();
Elements list1=doc.getElementsByClass("listPeriod");
Elements list =doc.select(".listPeriod");

Но ни list1 ни list не содержит все совпадения, а содержат только по 102 элемента, хотя аналогичный селектор на JQuery дает 683 элемента, что является правильным результатом.
Причем Jsoup в принципе не идёт по телу документа далее определённого места (КТУб-1201-01-00 последний нужный узел, который он находит) возвращая пустой результат даже на поиск по конкретному id, который расположен ниже определённого узла, хотя в Jquery никаких проблем с этим не испытывает.

Соответственно вопросы:
1) Почему так
2) Как исправить

P.S
Онлайн пример на этом же самом источнике вязнет в этому же месте, выдавая все те же 102 элемента
  • Вопрос задан
  • 425 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 1
rework
@rework
Помог ответ? В благодарность отметь его решением
для слишком больших документов Jsoup по-умолчанию скачивает не весь html код, а только часть. Это регулируется параметром maxBodySize, по-умолчанию он равен 1 МБ. Что бы убрать ограничение задайте значение 0 для данного параметра:

Jsoup
    .connect("https://www.vyatsu.ru/studentu-1/spravochnaya-informatsiya/raspisanie-zanyatiy-dlya-studentov.html")
    .maxBodySize(0)
    .get();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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