Сохраните единственную веб-страницу (с фоновыми изображениями) с Wget

Я хочу использовать Wget для сохранения единственных веб-страниц (не рекурсивно, не целые сайты) для ссылки. Во многом как "Веб-страница Firefox, завершенная".

Моя первая проблема: Я не могу заставить Wget сохранять фоновые изображения, указанные в CSS. Даже если бы это сохранило файлы фонового изображения, я не думаю - то преобразовывать-ссылки преобразовали бы URL фонового изображения в файле CSS для указания на локально сохраненные фоновые изображения. Firefox имеет ту же проблему.

Моя вторая проблема: Если существуют изображения на странице, я хочу сохранить, которые размещаются на другом сервере (как реклама) они, привычка включена. - хосты промежутка, кажется, не решает ту проблему со строкой ниже.

Я использую: wget --no-parent --timestamping --convert-links --page-requisites --no-directories --no-host-directories -erobots=off http://domain.tld/webpage.html

75
задан 14.10.2009, 02:23

3 ответа

wget управляйте предлагает опцию --mirror, который делает то же самое как:

$ wget -r -N -l inf --no-remove-listing

Можно также добавить -x создать целую иерархию каталогов для сайта, включая имя хоста.

Вы, возможно, не смогли найти это, если Вы не используете новейшую версию wget как бы то ни было.

7
ответ дан 07.12.2019, 08:08

Это походит wget и Firefox не анализирует CSS для ссылок для включения тех файлов в загрузку. Вы могли работать вокруг тех ограничений wget'ing, что Вы можете, и сценарии извлечения ссылки из любого CSS или JavaScript в загруженных файлах для генерации списка файлов, которые Вы пропустили. Затем второе выполнение wget в том списке ссылок мог захватить то, что было пропущено (используйте -i флаг для определения файла, перечисляющего URL).

Если Вам нравится Perl, существует CSS:: модуль Синтаксического анализатора на CPAN, который может дать Вам легкое средство извлечь ссылки этим способом.

Отметьте это wget только анализирует определенную разметку HTML (href/src) и CSS uris (url()) определить что необходимое страницы добраться. Вы могли бы попытаться использовать дополнения Firefox как Инспектор DOM или Firebug, чтобы выяснить, добавляются ли сторонние изображения, которые Вы не получаете, через JavaScript - если так, необходимо будет обратиться к плагину сценария или Firefox для получения их также.

2
ответ дан 07.12.2019, 08:08

Из страницы справочника Wget:

На самом деле, для загрузки единственной страницы и всего ее необходимого (даже если они существуют на отдельных веб-сайтах), и удостоверяются, что партия отображается правильно локально, этому автору нравится использовать несколько опций в дополнение к ‘-p’:

wget -E -H -k -K -p http://www.example.com/

Также в случае, если robots.txt запрещает Вам, добавляют -e robots=off

107
ответ дан 07.12.2019, 08:08

Теги

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