Кроссплатформенный способ создания веб-архивов Safari
-
03-07-2019 - |
Вопрос
Я искал вокруг и не нашел никаких ссылок на инструменты, которые могут создать формат веб-архива Safari.
У кого-нибудь есть указатели на код для создания этого формата или хотя бы справочную документацию по формату?
В идеале я хотел бы создать инструмент, который берет каталог и разделяет веб-архив для загрузки в iPhone.
Решение
Подробнее о том, что сказал Бен: CFLite (кроссплатформенный открытый исходный код подмножество Core Foundation) поставляется с анализатором plist. Если вы можете ссылаться на это, вам будет очень просто работать с файлами .webarchive
, которые являются просто списками свойств, которые объединяют все файлы (HTML, CSS и т. Д.) В один.
Есть и другие библиотеки, такие как Mac-PropertyList
на CPAN для Perl.
Другие советы
Я считаю, что формат .webarchives официально не документирован, но это всего лишь список. Вы можете открыть его в редакторе списка свойств и проверить его содержимое. Не должно быть трудно воспроизвести большинство, если не все, что там.
Пробовал textutil, но он использует только текстовую систему Какао и поэтому не работает на css, js и т. д.
Есть хороший проект GitHub: https://github.com/takebayashi/STWebArchiver
Он использует Webkit для записи файлов .webarchive. Нужна некоторая настройка для ваших нужд & # 8230;
Создание веб-архива, к счастью, является частью Webkit, поэтому вы можете использовать следующее для работы с ними на Mac:
Или используйте этот исходный код, чтобы понять используемый формат:
http://trac.webkit.org/browser /trunk/WebKit/mac/WebView/WebArchive.mm р>
Он не кроссплатформенный, а на Mac
textutil -convert webarchive whatever.html
делает работу. Не уверен, что вы можете легко включать изображения и т. Д.