4

В качестве примера я попытался сохранить эту веб-страницу, используя Firefox «Сохранить страницу как> Веб-страница, завершена», но он не сохранил раздел комментариев (см. Сохраненные файлы). Я предполагаю, что это потому, что комментарии генерируются динамически через JS.

Существует ли расширение для браузера или что-то еще, уже реализованное (например, веб-служба), которое может сделать что-то вроде извлечения всего DOM в его текущем состоянии и его сохранения?

Печать страницы в формате PDF сохраняет содержимое, видимое в браузере, но макет все перепутан, плюс я действительно хочу сохранить исходный код и носитель страницы (HTML, JS, CSS, gif, pngs и т.д.).

2 ответа2

1

Комментарии на самом деле действительно сохранены (открыть файл HTML внутри архива в текстовом редакторе). Они просто не отображаются, потому что JavaScript на этой странице скрывает их при загрузке страницы.

Чтобы увидеть их, вы можете временно отключить JavaScript перед загрузкой страницы, например, с помощью надстройки WebDeveloper . После его установки у вас будет добавлена новая панель инструментов, а затем выберите первую вкладку "Disable" -> "Disable JavaScript".

Однако при загрузке исходной страницы без JavaScript комментарии не отображаются. Так что это будет означать, что Firefox корректно обрабатывает подобные ситуации. Я никогда не думал об этом раньше, потому что я редко сохраняю страницы на диск.

-1

Со стороны клиента, если вы хотите сохранить состояние в том виде, в котором оно отображается, ваша лучшая (и, вероятно, единственная) ставка - сделать снимок экрана. Особенно с динамическим, автоматически сгенерированным содержимым, таким как то, что может исходить из Javascript of Flash, нет реальных практических альтернатив (хотя, в зависимости от просматриваемой страницы, вы иногда можете приблизиться к некоторым инструментам).

Сканирование и сохранение состояния DOM - это то, что уже делает "Сохранить как". Поскольку для данных не требуется, чтобы в DOM было включено какое-либо понятное или сохраняемое состояние, вы пропустите детали независимо от того, что вы пытаетесь, если вы зависите только от DOM. Вам нужно будет сделать что-то напуганное, например, приостановить и сохранить состояние виртуальной машины Javascript в вашем браузере, а затем каким-то образом восстановить его. Не берите в голову усложнение состояния, которое регулярно обновляется на основе информации и данных, хранящихся в других местах в Интернете.

Я не совсем уверен, почему вы также хотите иметь носитель версии клиента, но вы уже получаете команду "Сохранить страницу как".

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .