Как я могу скачать весь сайт?

695596
joe

Как я могу скачать все страницы с сайта?

Любая платформа в порядке.

323
@tnorthcutt, я тоже удивлен. Если я не вспоминаю ужасно неправильно, мой ответ Wget был принят, и это выглядело как улаженная вещь. Я не жалуюсь - внезапно возобновленное внимание дало мне больше, чем награду за награду. :П Jonik 14 лет назад 0
ты пробовал IDM? http://superuser.com/questions/14403/how-can-i-download-an-entire-website/42379#42379 мой пост похоронен. Что вы нашли отсутствующим в IDM? Lazer 14 лет назад 0
@joe: Может помочь, если бы вы подробно рассказали о том, что недостающие функции ... Ilari Kajaste 14 лет назад 5
Проверьте http://serverfault.com/questions/45096/website-backup-and-download на сбой сервера. Marko Carter 14 лет назад 2
[browse-offline.com] (http://www.browse-offline.com) может загрузить полное дерево веб-сайта, чтобы вы могли ... просматривать его в автономном режиме Menelaos Vergis 10 лет назад 0
@MenelaosVergis browse-offline.com ушел user5389726598465 6 лет назад 0
Да, у меня даже нет кода для этого! Menelaos Vergis 6 лет назад 0
просто к вашему сведению, афера !!! не загружайте с https://websitedownloader.io/, он запросит небольшую сумму, которая выглядит убедительно, но загружает только веб-страницу, даже не работает на простых веб-сайтах. Anil Bhaskar 6 лет назад 0

19 ответов на вопрос

312
Axxmasterr

HTTRACK работает как чемпион по копированию содержимого всего сайта. Этот инструмент может даже захватить части, необходимые, чтобы веб-сайт с активным содержимым кода работал в автономном режиме. Я поражен тем, что он может воспроизводить в автономном режиме.

Эта программа сделает все, что от вас требуется.

Хорошей охоты!

Использовать это годами - очень рекомендуется. Umber Ferrule 14 лет назад 6
Вы также можете ограничить скорость загрузки, чтобы не использовать слишком большую пропускную способность в ущерб всем остальным. Umber Ferrule 14 лет назад 0
Наконец этот немного лучше, чем другие;) joe 14 лет назад 0
Будет ли это копировать фактический код ASP, который работает на сервере? Taptronic 14 лет назад 3
@ Оптимальные решения: нет, это невозможно. Вам понадобится доступ к серверам или исходный код для этого. Sasha Chedygov 14 лет назад 7
Попробовав httrack и wget для сайтов с авторизацией, мне приходится склоняться в пользу wget. Не удалось заставить httrack работать в таких случаях. Leo 11 лет назад 1
Какой вариант для аутентификации? vincent mathew 10 лет назад 0
что если я попытаюсь скопировать вики en? Timothy 9 лет назад 0
Хороший учебник для базового использования - http://www.makeuseof.com/tag/save-and-backup-websites-with-httrack/ Borat Sagdiyev 9 лет назад 0
Я хотел бы загрузить, например, большие изображения из списков на eBay (те, которые показываются в каждом списке), используя ссылку в результатах поиска. может ли кто-нибудь сказать мне настройки HTTrack, которые я могу использовать для этого? und3rd06012 8 лет назад 0
Поддерживает ли это загрузку постраничного содержимого, например mywebsite.com/games?page=1, mywebsite.com/games?page=2, потому что кажется, что оно переопределяет ранее созданные страницы и показывает только последнюю страницу. Пожалуйста посоветуй. Teoman shipahi 8 лет назад 0
Поддерживает ли он куки (сеансы)? jayarjo 7 лет назад 0
246
Jonik

Wget - это классический инструмент командной строки для решения подобных задач. Он поставляется с большинством систем Unix / Linux, и вы можете получить его и для Windows . На Mac Homebrew - самый простой способ установить его ( brew install wget).

Вы бы сделали что-то вроде:

wget -r --no-parent http://site.com/songs/ 

Для получения дополнительной информации см. Руководство по Wget и его примеры, например:

Нет лучшего ответа, чем этот - wget может сделать что угодно: 3 Phoshi 14 лет назад 11
+1 за включение --no-parent. определенно используйте --mirror вместо -r. и вы можете включить -L / - относительно не переходить по ссылкам на другие серверы. quack quixote 14 лет назад 4
Я не думаю, что я использовал - Зеркало сам, поэтому я не сказал, что это ответ. (И это * не * действительно "самоочевидно", как говорит ответ Павла ...) Если вы хотите уточнить, почему это лучше, чем -r, я был бы признателен! Jonik 14 лет назад 1
Как я и просил httrack.com - получит ли этот инструмент строки cmd ASP * код * или он просто получит рендеринг HTML? Я должен попробовать это. Это может быть немного тревожно для разработчиков, если это так ... Taptronic 14 лет назад 2
@ Оптимальный вывод HTML, конечно - он получит код, только если сервер был неправильно настроен Jonik 14 лет назад 5
к сожалению, это не работает для меня - есть проблема со ссылками на файлы CSS, они не изменяются на относительные, то есть вы можете увидеть что-то подобное в файлах: что не работает локально хорошо, если не существует трюка, чтобы обмануть Firefox думать, что определенный каталог является корнем. gorn 11 лет назад 2
Homebrew показывает, как установить его прямо на домашней странице http://brew.sh/ Eric Brotto 9 лет назад 2
Httrack против Wget? Какой из них я должен использовать на Mac? 6754534367 7 лет назад 0
@gorn Это может быть выполнимо с chroot, хотя я никогда не пробовал. wjandrea 6 лет назад 0
132
Yay295

Используйте wget:

wget -m -p -E -k www.example.com 

Варианты объяснил:

-m, --mirror Turns on recursion and time-stamping, sets infinite  recursion depth, and keeps FTP directory listings. -p, --page-requisites Get all images, etc. needed to display HTML page. -E, --adjust-extension Save HTML/CSS files with .html/.css extensions. -k, --convert-links Make links in downloaded HTML point to local files. 
+1 за пояснения предложенных вариантов. (Хотя я не думаю, что `--mirror` говорит само за себя. Вот со страницы руководства:" * Эта опция включает рекурсию и отметку времени, устанавливает бесконечную глубину рекурсии и сохраняет списки каталогов FTP. В настоящее время она эквивалентна to -r -N -l inf --no-remove-list * ") Ilari Kajaste 14 лет назад 6
Если вы не хотите загружать все в папку с именем домена, который хотите зеркалировать, создайте свою собственную папку и используйте опцию -nH (которая пропускает часть хоста). Rafael Bugajewski 12 лет назад 2
Что делать, если требуется авторизация? Val 10 лет назад 2
Я попытался использовать ваш `wget --mirror -p --html-extension --convert-links www.example.com`, и он только что загрузил индекс. Я думаю, вам нужен `-r`, чтобы загрузить весь сайт. Eric Brotto 9 лет назад 4
для тех, кто обеспокоен уничтожением сайта из-за трафика / слишком большого количества запросов, используйте `-w секунд` (для ожидания количества секунд между запросами или` --limit-rate = amount`, чтобы указать максимальную пропускную способность использовать при загрузке vlad-ardelean 9 лет назад 3
@EricBrotto вам не нужны оба `--mirror` и` -r`. Со страницы руководства `wget`:« [--mirror] в настоящее время эквивалентно -r ». evanrmurphy 9 лет назад 1
`-p` - сокращение от` --page-реквизиты`, для всех, кому интересно. evanrmurphy 9 лет назад 2
Использование `wget` таким образом не приведет к получению файлов, на которые есть ссылки в Javascript. Например, в ` ` изображения для mouseout и mouseover будут пропущены. starfry 8 лет назад 1
Кто-нибудь знает, как я могу использовать wget для получения больших изображений списков на Ebay? Например, я хочу получить большие изображения по этой ссылке: http://www.ebay.com/sch/i.html?_from=R40&_trksid=p2051542.m570.l1313.TR0.TRC0.H0.X1974+stamps.TRS0&_nkw = 1974 + марки & _sacat = 0. Чтобы быть более конкретным, я хочу, чтобы изображения отображались при наведении курсора мыши на изображение. und3rd06012 8 лет назад 1
Для меня это не работает, как ожидалось, он не воссоздает все ссылки внутри страницы, чтобы быть доступным для просмотра в автономном режиме chaim 8 лет назад 1
Если вы хотите только скачать `www.example.com / foo`, используйте опцию` --no-parent`. Cinnam 7 лет назад 0
This seems to get confused with some hyperlinks: /contact was converted to index.html?p=11 (which it also copied into the top level directory, even though contact/index.html was downloaded too) hayd 7 лет назад 0
Ah, these are apparently redirects in wordpress but not resolved by wget, and strangely used in the downloaded html when resolved in the original html (no `p=` link in the `a` tag). hayd 7 лет назад 0
Если вы хотите вывести сайт, работающий локально, используйте `localhost: 4000` (или любой другой порт), а не` 127.0.0.1:`или это не сработает - по крайней мере, для меня это не сработало. По какой-то причине он получит только файлы `index.html` для каждой страницы моего сайта, а не все ресурсы, CSS и т. Д. Evan R 5 лет назад 0
8
Lazer

Internet Download Manager имеет утилиту Site Grabber с множеством опций, которая позволяет вам полностью загрузить любой веб-сайт, какой вы захотите, так, как вы этого хотите.

  1. Вы можете установить ограничение на размер загружаемых страниц / файлов.

  2. Вы можете установить количество посещаемых филиалов.

  3. Вы можете изменить поведение скриптов / всплывающих окон / дубликатов

  4. Вы можете указать домен, только под этим доменом будут загружены все страницы / файлы, соответствующие требуемым настройкам.

  5. Ссылки могут быть преобразованы в автономные ссылки для просмотра

  6. У вас есть шаблоны, которые позволяют вам выбрать вышеуказанные настройки для вас

Однако программное обеспечение не является бесплатным - посмотрите, соответствует ли оно вашим потребностям, используйте ознакомительную версию.

8
webjunkie

Вы должны взглянуть на ScrapBook, расширение Firefox. Он имеет режим углубленного захвата .

Больше не совместим с Firefox после версии 57 (Quantum). Yay295 6 лет назад 2
7
kmarsh

itucks - это название программы!

5
Axxmasterr

Я расскажу об онлайн буферизации, которую используют браузеры ...

Как правило, большинство браузеров используют кеш просмотра, чтобы немного сохранить файлы, которые вы загружаете с веб-сайта, чтобы вам не приходилось загружать статические изображения и контент снова и снова. Это может немного ускорить процесс при некоторых обстоятельствах. Вообще говоря, большинство кешей браузера ограничены фиксированным размером, и когда он достигает этого предела, он удаляет самые старые файлы в кеше.

Интернет-провайдеры, как правило, имеют кэширующие серверы, на которых хранятся копии часто используемых веб-сайтов, таких как ESPN и CNN. Это избавляет их от необходимости посещать эти сайты каждый раз, когда кто-то из их сети посещает их. Это может привести к значительной экономии в количестве дублированных запросов к внешним сайтам к провайдеру.

5
Eran

Мне нравится Offline Explorer .
Это условно-бесплатная программа, но она очень хорошая и простая в использовании.

4
Bobby Ortiz

Я не делал этого много лет, но есть еще несколько утилит там. Вы можете попробовать Web Snake . Я думаю, что использовал это много лет назад. Я сразу вспомнил имя, когда прочитал твой вопрос.

Я согласен со Стейси. Пожалуйста, не забивайте их сайт. Очень плохой.

4
Herb Caudill

WebZip также является хорошим продуктом.

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