Сохранение страницы
Вот что меня удивляет. Хром и браузеры на WebKit захватили весь мир, фирмы выбрасывают старые движки, Мейл.ру и Яндексы ставят офисному планктону хромовые поделки. И до сих пор не решена банальная проблема. Я хочу сохранить страницу на диск, а потом открыть ее и увидеть в том же виде.
Простое сохранение страницы работает не всегда. Вот прямо сейчас проделайте следующее. У вас же Хром, да? Откройте любой проект на Гитхабе, хоть этот, например:
Сохраните страницу на диск (Ctrl/Command + S). Теперь откройте html-файл. Как оно?
Ужасно. Причина в том, что Хром ограничивает доступ к локальному ресурсу из-за CORS-ограничений. Безопасность и все такое, но в итоге я не вижу страницу. То же самое в любом Хромо-браузере: Опере, Edge, поделки от русских фирм. И даже в Сафари. А вот Firefox и, внезапно, Internet Explorer показывают нормально.
С сохранением страниц всегда была беда, сколько помню. Какие-то браузеры сохраняют исходный код страницы. Например, если это SPA, то вы ничего не увидите. Другие не скачивают стили и ресурсы. Если я хочу сохранить страницу, чтобы прочесть ее в самолете или поезде, то нет никакой гарантии, что все пройдет нормально. Открыл в поезде ноут, а там голый HTML. Извини друг, просто это небезопасно.
Другая странность — браузеры до сих пор не могут сделать скриншот страницы. Я в курсе про тысячи расширений для Хрома, но вопрос все равно открыт. На техническом уровне любой браузер может выплюнуть картинку. Я писал либу для протокола WebDriver, и это работает даже для Phantom.js. Послал запрос, получил PNG в Base64. Зачем плодить расширения там, где все и так есть, непонятно.
Если запинить вкладку в браузере, то рано или поздно она выпадет из памяти на диск. Переключитесь на нее, когда нет интернета, и увидите белый экран. По сути, есть только один надежный способ сохранить страницу — напечатать ее в PDF. Недостаток в том, что печатная версия иногда отличается в худшую сторону от оригинала. Так и живем.
Нашли ошибку? Выделите мышкой и нажмите Ctrl/⌘+Enter
sasha, 30th Oct 2019, link
По поводу скриншотов — в хроме если открыть панель разработчика, нажать ctrl + shift + p и начать писать screenshot то появятся команды для создания скриншота
https://uploads.disquscdn.c...
А в файрфоксе он в дропдауне под тремя точками, справа от адресной строки
Ivan Grishaev, 30th Oct 2019, link , parent
Охренеть! Работает, но почему нельзя вынести это в меню File, а не прятать под выпадашками и в консоли?
Alexander Malkov, 1st Nov 2019, link , parent
Возможно потому, что кто-то из команды проекта посчитал, что это не ключевая функция браузера.
Это как по аналогии с автомобилем. На приборной панели отображаются ключевые параметры - скорость, частота вращения, объем топлива, температура охлаждающей жидкости, давление масла и ещё несколько в скрытом режиме.
И только сервисмены знают, что если подключить автосканер, то можно вытащить ещё сотню полезных параметров.
Semyon Bochkaryov, 6th Nov 2019, link
Для Chrome (и, скорее всего, других браузеров) есть шикарное расширение, сохраняющее страницу в файл, со всеми данными, стилями и даже PNG в Base64:
https://chrome.google.com/w...
А вообще, с каждым годом начинаю всё сильнее ценить archive.is. У него есть API, и можно организовать автоэкспорт из закладок или Pocket с помощью ArchiveBox, а полученный архив потом скачать локально.