Не удается получить данные с помощью importXML с динамической веб-страницы?

Веб-сайт: https://www.futbin.com/18/player/2600/Ayhan/

Я проверяю элемент и получаю XPath, который: //*[@id="ps-lowest-1"]

Тогда я использую:

=IMPORTXML("https://www.futbin.com/18/player/2600/Ayhan/","//*[@id='ps-lowest-1']")

Чтобы получить данные, которые должны быть 2000

Но вместо этого это только показывает: - на листе. Без ошибок просто не показывает данные, которые я хочу. Есть ли способ получить данные, которые мне нужны?

Спасибо

1 ответ

Решение

Команда Sheets importXML читает только исходный HTML-код страницы, не выполняя на ней JavaScript. Как вы можете видеть себя, используя "просмотр источника" в браузере, источник действительно имеет "-" в этом диапазоне:

 <span class="price_big_right">
     <span id="ps-lowest-1">-</span>
 </span>

Фактические числа загружаются некоторым файлом JavaScript, который затем вставляет их в этот промежуток. Ни importXML, ни другие функции Sheets не могут извлекать динамически вставленные данные.

Иногда, после проверки файлов JS, можно раскрыть URL источника данных и попытаться импортировать его; но это утомительное упражнение обратного инжиниринга для каждого конкретного сайта.

Другие вопросы по тегам