@isawillbenice

Как забрать содержимое страницы?

Необходимо забрать содержимое страницы, но есть блоки на странице, в которых данные записываются через js, то есть нужно получить контент после выполнения всего js.

Например
Есть у нас блок, в котором указан некий рейтинг, но этот рейтинг появляется после того как страница будет загружена (через js подставляются данные)

Каким образом можно получить корректные данные?
  • Вопрос задан
  • 2484 просмотра
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Чисто на PHP - никак. Вам нужен полноценный браузер для этого. Посмотрите в сторону phantomjs, с его помощью можно програмно загрузить страницу, поставить таймаут в пол секунды (или сколько нужно что бы js отработал), и, так как у вас есть полный доступ к DOM, можно сразу там выковырять все данные и передать их куда дальше.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ghaiklor
@ghaiklor
NodeJS TechLead
Самый быстрый костыль - используй setTimeout().
Псевдокод:
setTimeout(function() {
    getRating();
}, 5000);

За 5 секунд, думаю, всё что нужно уже должно загрузиться :)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы