Я хочу получить значение «data-default-src» из html ниже. Похоже, что тело находится в узле теневого корня или скрыто в исходном коде. Это видно только при использовании элемента chrome для проверки элементов, а не при выполнении ctrl + u.parse html-элементы с помощью Jsoup
<body onload="handleOnLoad();" style="margin:0;padding:0;width:100%;height:100%;
position:relative;overflow:hidden" id="myPlayer"
data-default-src="https://cdn.video.playwire.com/12272/videos/4483914/video-sd.mp4?hosting_id=12272">
Это то, что я пытался до сих пор:
Elements media = doc.select("body");
for (Element links: media)
{
System.out.println((links.attr("abs:data-default-src")));
}
и это тоже:
Element body = doc.body();
System.out.println(body.attr("data-default-src"));
«Это видно только с помощью элемента элемента проверки хром, а не при выполнении ctrl + u». Это означает, что атрибут генерировался динамически в браузере, скорее всего, с использованием JavaScript. JSoup - это библиотека HTML, а не полный эмулятор браузера. Вам нужно будет выяснить другой способ получить значение. –
@still_learning Спасибо. Любой другой извлекающий API, который вы знаете, может помочь решить проблему? – Scitech
Это зависит от ваших требований и того, как генерируется атрибут. Посмотрите на [эту страницу] (https://gist.github.com/evandrix/3694955). Некоторое время назад я попробовал, HTMLUnit кажется надежным выбором. –