Nano Hash - криптовалюты, майнинг, программирование

jsoup не получает полных данных

У меня есть проект для школы, чтобы анализировать веб-код и использовать его как базу данных. Когда я попытался снять данные с (https://www.marathonbet.com/en/betting/Football/), я не понял?

Вот мой код:

Document doc = Jsoup.connect("https://www.marathonbet.com/en/betting/Football/").get();
Elements newsHeadlines = doc.select("div#container_EVENTS");

for (Element e: newsHeadlines.select("[id^=container_]")) {
    System.out.println(e.select("[class^=block-events-head]").first().text());
    System.out.println(e.select("[class^=foot-market]").select("[class^=event]").text());
} 

для полученного результата (это последняя из отображаемых лиг):

Football. Friendlies. Internationals All bets Main bets
1. USA 2. Mexico 16 Apr 01:30 +124 7/5 23/10 111/50 +124

над ней отображаются все лиги.

Почему я не получаю полные данные? Спасибо за ваше время!

15.04.2015

  • я получаю некоторые данные, но не все, какие данные вы не получили? 15.04.2015
  • вроде половина списка. до футбола. Товарищеские матчи. Международная лига 15.04.2015
  • Можете ли вы показать один результат, который вы хотите получить, который пропущен? 15.04.2015
  • Например, это одна лига: Футбол. Англия. Лига 2 1. Бертон Альбион 2. Карлайл Юнайтед 19:45 +83 51/100 13/4 34/5 +83 Но я хочу, чтобы все они были такими 15.04.2015
  • Я не могу воспроизвести вашу проблему. 1. Burton Albion 2. Carlisle United 19:45 +83 51/100 13/4 34/5 +83 печатается нормально (с дополнительным текстом All bets Main bets, но это выглядит нормально). Пожалуйста, отредактируйте свой вопрос, где вы объясните, что вы ожидаете, и что происходит вместо этого. 15.04.2015
  • Возможно, сайт использует JavaScript для загрузки данных, а Jsoup не поддерживает js. Вы можете попробовать отключить javascript в настольном веб-браузере и посмотреть, правильно ли работает сайт. 15.04.2015
  • @JonasCz Когда вы печатаете содержимое doc.toString() (например, в файл, поскольку оно может быть слишком большим для консоли), вы заметите, что существует HTML-код, отвечающий за создание Football. England. League 2 1. Burton Albion 2. Carlisle United 19:45 +83 51/100 13/4 34/5 +83, поэтому Jsoup должен быть в состоянии (и должен) найти его. На данный момент этот вопрос неясен, что именно не работает должным образом (и почему ОП считает, что что-то должно работать). 15.04.2015
  • @Pshemo, просто предложил это, поскольку такая проблема с отсутствием данных на веб-странице обычно вызвана отсутствием поддержки JS. Тогда проблема должна быть где-то в другом месте, и ОП должен уточнить. 15.04.2015

Ответы:


1

Jsoup имеет лимит ответа тела по умолчанию в 1 МБ. Вы можете изменить его на любой другой с помощью maxBodySize(целое)

Установите максимальное количество байтов для чтения из (несжатого) соединения в тело, прежде чем соединение будет закрыто, а ввод усечен. Максимальный размер по умолчанию — 1 МБ. Максимальный нулевой размер рассматривается как бесконечное количество (ограниченное только вашим терпением и памятью, доступной на вашем компьютере).

E.g.:

Document doc = Jsoup.get(url).userAgent(ua).maxBodySize(0).get();

Возможно, вы захотите просмотреть другие параметры в разделе Connection, чтобы узнать, как установить запрос тайм-ауты, юзер-агент и т.д.

18.04.2015
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..


© 2024 nano-hash.ru, Nano Hash - криптовалюты, майнинг, программирование