Мне интересно, можно ли перечислить все файлы, загруженные для веб-страницы, загруженной через Google Puppeteer, например, скрипты, стили (не включая встроенные), изображения, видео, аудио. Мне нужно получить список файлов и их соответствующие размеры. Возможно ли это, и если нет, есть какое-то программное обеспечение (например, пакет npm), который может это сделать?
Поиск результатов Google и NPM ничем не отличается от того, что мне нужно.
Ресурсы страницы не хранятся на диске, они хранятся в памяти браузера и иногда кэшируются, поэтому невозможно узнать их размеры.
На что вы хотите обратить внимание - это веб -скребок, который можно выполнять с помощью модулей, таких как узел-скребок узла или кукольник:
page.on('response', async (response) => {
const url = new URL(response.url());
let filePath = path.resolve('./output${url.pathname}');
if (path.extname(url.pathname).trim() === '') {
filePath = '${filePath}/index.html';
}
await fs_extra.outputFile(filePath, await response.buffer());
});
Часть кода выше перехватывает запросы и сохраняет их в выходной папке, где вы можете проверить их размеры. Дополнительную информацию см. В связанной статье.
Коды от mihai работают в большинстве случаев. Но когда есть ответ с 206 статусом (изображения, видео и аудио, как правило, в ответе 206), возникает ошибка. Посмотрите https://github.com/GoogleChrome/puppeteer/questions/1274