Подскажите правильно направление. Использую Jsoup для парсинга странницы на youtube. Столкнулся со следующей проблемой, что не могу отловить "длительность" ролика. Видео загружается после того как страница загрузилась. Условия таковы, что использовать Youtube API нельзя. Спасибо.
Document doc = Jsoup.connect(url)
.userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6")
.header("Accept-Language", "en")
.timeout(60000)
.ignoreContentType(true)
.get();
String durationSt = doc.select("span[class='ytp-time-duration']").text();
System.out.println("длительность ролика: " + durationSt);
Дело в том, что указанного span[class='ytp-time-duration']
в самом документе не существует. Он создается JavaScript, который исполняется браузером после загрузки страницы. Библиотек JSOUP JavaScript не выполняет и поэтому вы не сможете найти эти данные на в документе.
Вы можете:
Использовать Selenium - он полностью имитирует действия пользователя и выполняет JavaScript, то есть вы сможете найти именно эти данные.
Посмотреть как выглядит документ без запуска JavaScript и поискать эти данные в нем. Скорей всего там они выглядят примерно так
<span class="accessible-description" id="description-id-122142">
- Duur: 36:05.
</span>
Пробую разобраться с selenium, но всё равно не выходит пробую так:
WebDriver driver = new HtmlUnitDriver();
driver.get("https://www.youtube.com/watch?v=XnpKHQwJS4k");
WebElement element = driver.findElement(By.xpath("//span[@class='ytp-time-duration']"));
Что нужно ещё сделать? Selenium ругается, что Unable to locate a node.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Нужно сделать правильную сетку с помощью CSS и желательно FlexboxВот так у меня выглядит сейчас
Понимаю, что это азы и должно быть очень простоПодскажите, как через кнопку в
Создал функцию которая создает таблицу и передал ей массив , далее создал 2 инпута и кнопкуКак же задать массив написав его значения инпута...