Как посмотреть код сайта, который имеет одно подключение к файлу JS?

Возможно ли на PHP посмотреть код с другого сайта, который имеет одно подключение к JS? Например:
<html>
<body>
<script src="script.js"></script>
</body>
</html>

Нужно получить именно контент сайта, а не данный код. Это возможно? Спасибо
  • Вопрос задан
  • 114 просмотров
Пригласить эксперта
Ответы на вопрос 1
dyuriev
@dyuriev
A posteriori
могу предложить вам интересный костыль через хром/хромиум
ставите хромиум и через shell_exec вызываете с параметрами headless/disable-gpu/dump-dom (последний флаг для вашей задачи ключевой).
примерно так:

$dom = shell_exec('chromium-browser --headless --disable-gpu --dump-dom https://example.ru/');


chromium-browser заменить на имя бинарника хром(иум)а в дистрибе

в этом случае хром(иум) запустится в headless-режиме (без пользовательского графического интерфейса), без поддержки gpu (на серверах их один хрен не бывает за редким исключением), скачает страницу, все ресурсы, выполнит весь Client-Slide-рендер (как раз таки этот JS-скрипт), соберет DOM и вернет его (собранный DOM) в результате

PS: правильнее поднимать хром(иум) как сервис локальный и юзать CDP или через puppeteer но это долго рассказывать

PPS: не через браузеры/браузерные движки, реализация на чистом PHP мягко говоря крайне затруднительна, ибо как минимум интерпретировать JS вам каким то образом придется.
Ответ написан
Ваш ответ на вопрос

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

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