Я использую Jsoup для очистки некоторых онлайн-данных из разных магазинов, но мне трудно понять, как программно воспроизводить то, что я делаю как пользователь. Чтобы получить данные вручную (после входа в систему), пользователь должен выбрать магазин из a tree, который появляется.Jsoup с плагином
Насколько я могу судить, дерево не жестко закодировано на сайте, но создается интерактивно, когда ваш компьютер взаимодействует с сервером. Когда вы ищете таблицу в «источнике страницы просмотра», записей нет. Когда я inspect the tree, я вижу HTML-код, и, похоже, он появился из плагина FancyTree.
Насколько я могу судить по отслеживанию моей активности в Developer Tools - Network, следующим шагом является запрос «GET», который не изменяет URL-адрес, поэтому я не уверен, как мой выбор магазина переданы.
Любые советы о том, как получить Jsoup или Java, как правило, программно взаимодействовать с этой таблицей, были бы чрезвычайно полезны, спасибо!
DOMS слишком динамичны в эти дни, чтобы надеяться проанализировать только html и получить что-нибудь полезное. Вам понадобится использовать такой инструмент, как Selenium, который имеет браузеры с дистанционным управлением. Таким образом, вы можете попросить его найти кнопки и выпадающие списки, выбрать правильные элементы, правильно выполнить JS, а затем спросить браузер о текущем состоянии DOMS, когда все будет правильно. Затем вы можете разобрать это с помощью jsoup. Если это приложение на стороне сервера с использованием Linux, вы все равно можете сделать все без головы, используя xvfb (полезная подсказка, если это так). – Quaternion
Спасибо за это, я бы отдал его, если бы смог поддержать комментарии! – Cory