Задать вопрос
@im_mommmys

Нужно ловить динамическую информацию, которая подгружается на сайт?

К примеру у меня есть страница Ссылка удалена модератором. (открывать желательно с Firefox иначе не будет информации(на хроме почему-то не работает)). И на нее динамически загружается информация, там если открыть инспектор, можно увидеть где подгружается блок с информацией. Он выглядит примерно так:
как поймать отсюда инфу?
    {^{include sellerExtInfo}}        <div class="seller-details__parameter">            {{if registrationDate}}                <div class="seller-details__parameter-item">                    <p class="seller-details__parameter-value seller-details__parameter-value--time">{{if isNewSupplier}}Новый магазин{{else}}{{humanDate:registrationDate}}{{/if}}</p>                    <p class="seller-details__parameter-name">{{if !isNewSupplier && saleItemQuantity > 0}}продает на Wildberries{{else}}на Wildberries{{/if}}</p>                </div>            {{/if}}            {{if !hideSellsCount}}                <div class="seller-details__parameter-item">                    <p class="seller-details__parameter-value {{if saleItemQuantity > 0}}seller-details__parameter-value--delivered{{/if}}">{{if saleItemQuantity > 0}}{{spaceFormatted:saleItemQuantity}}{{else}}Нет{{/if}}</p>                    <p class="seller-details__parameter-name">{{pluralize: (saleItemQuantity || 0) 'проданный товар' 'проданного товара' 'проданных товаров'}}</p>                </div>            {{/if}}            {{if percent > 0 && saleItemQuantity > 0}}                <div class="seller-details__parameter-item">                    <p class="seller-details__parameter-value seller-details__parameter-value--delivery">{{:percent}}%</p>                    <p class="seller-details__parameter-name">доставок вовремя</p>                </div>            {{/if}}            {{if defectPercent != null && saleItemQuantity > 0}}                <div class="seller-details__parameter-item">                    <p class="seller-details__parameter-value seller-details__parameter-value--defective">{{:defectPercent}}%</p>                    <p class="seller-details__parameter-name">товаров с браком</p>                </div>            {{/if}}        </div>    {{/include}}

Я пытался парсить сайт, мой парсер не видит этой информации...
Мне нужно ловить в коде данную информацию для конкретного продавца, язык кода не важен, я перепишу под свой ЯП. Возможно кто-то знает как поймать и обработать данную информацию?
  • Вопрос задан
  • 195 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Vertenz
@Vertenz
Мечтетель
Если я правильно понял задачу, то можно дождаться появления дерева и элементов нужных вам. Но придется всегда знать класс (и под каким он индексом) или id или data. Дальше берем этот элемент, проверяем есть ли он, после того как находим берем данные из всех дочерних узлов.
Можете вставить этот код в консоль в браузере чтобы проверить.
const arr = document.getElementsByClassName('seller-details__parameter');
(function traverse(node = arr[0]) {
  // Проверяем тип узла, чтобы получить только текстовые узлы
  if (node.nodeType === Node.TEXT_NODE && node.textContent.trim() !== '') {
    console.log(node.textContent);
  }
  // Рекурсивно обходим все дочерние узлы
  node.childNodes.forEach(traverse);
})();
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы