Я хотел бы скачать локальную копию веб-страницы и получить все CSS, изображения, JavaScript и т. Д.
В предыдущих обсуждениях (например, здесь и здесь , обоим из которых более двух лет), обычно выдвигаются два предложения: wget -p
и httrack . Однако оба эти предложения терпят неудачу. Я был бы очень признателен за помощь в использовании любого из этих инструментов для выполнения задачи; альтернативы тоже прекрасны.
Опция 1: wget -p
wget -p
успешно загружает все необходимые компоненты веб-страницы (css, images, js). Однако, когда я загружаю локальную копию в веб-браузер, страница не может загрузить предварительные условия, поскольку пути к этим предварительным условиям не были изменены из версии в Интернете.
Например:
- В html страницы
<link rel="stylesheet href="https://stackoverflow.com/stylesheets/foo.css" />
необходимо будет исправить указание на новый относительный путьfoo.css
- В CSS-файле
background-image: url(/images/bar.png)
аналогичным образом нужно будет настроить.
Есть ли способ изменить wget -p
так, чтобы пути были правильными?
Вариант 2: httrack
httrack
кажется отличным инструментом для зеркалирования целых веб-сайтов, но мне неясно, как его использовать для создания локальной копии одной страницы. На форумах httrack есть много дискуссий на эту тему (например, здесь ), но никто, кажется, не имеет пуленепробиваемого решения.
Вариант 3: еще один инструмент?
Некоторые люди предлагают платные инструменты, но я просто не могу поверить, что там нет бесплатного решения.
источник
wget -E -H -k -K -p http://example.com
- только это сработало для меня.wget --random-wait -r -p -e robots=off -U mozilla http://www.example.com
Ответы:
Wget способен делать то, что вы просите. Просто попробуйте следующее:
-p
Получит вам все необходимые элементы для правильного отображения сайта (CSS, изображения и т.д.).-k
Изменит все ссылки (включая те , для CSS и изображений) , чтобы позволить Вам просматривать страницы в автономном режиме , как он появился в Интернете.Из документов Wget:
источник
index.html#link-to-element-on-same-page
перестали работать внутренние ссылки, такие как .-U 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4'
-H, --span-hosts