Мені потрібно зірвати сайт через HTTP. Мені потрібно завантажити зображення, HTML, CSS та JavaScript, а також організувати їх у файловій системі.
Хтось знає, як це зробити?
Мені потрібно зірвати сайт через HTTP. Мені потрібно завантажити зображення, HTML, CSS та JavaScript, а також організувати їх у файловій системі.
Хтось знає, як це зробити?
Відповіді:
wget -erobots=off --no-parent --wait=3 --limit-rate=20K -r -p -U "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" -A htm,html,css,js,json,gif,jpeg,jpg,bmp http://example.com
Це працює в консолі.
це захопить сайт, зачекайте 3 секунди між запитами, обмежте швидкість його завантаження, щоб він не знищив сайт, і замаскуйте себе таким чином, що він здається просто браузером, щоб сайт не відрізав вас за допомогою механізму проти п'явки.
Зверніть увагу на -A
параметр, який вказує на список типів файлів, які ви хочете завантажити.
Ви також можете використовувати інший тег, -D domain1.com,domain2.com
щоб вказати серію доменів, які ви хочете завантажити, якщо вони мають інший сервер або будь-який інший для розміщення файлів різних типів. Немає безпечного способу автоматизувати це для всіх випадків, якщо ви не отримаєте файли.
wget
як правило, попередньо встановлюється в Linux, але його можна тривіально компілювати для інших систем Unix або легко завантажити для Windows: GNUwin32 WGET
Використовуйте це для добра, а не зла.
Гарне, безкоштовне рішення: HTTrack
HTTrack - це безкоштовна (GPL, вільне / безкоштовне програмне забезпечення) та зручна утиліта браузера в режимі офлайн.
Це дозволяє завантажувати всесвітній веб-сайт з Інтернету в локальний каталог, будуючи рекурсивно всі каталоги, отримуючи HTML, зображення та інші файли з сервера на комп'ютер. HTTrack організовує відносну структуру посилання оригінального сайту. Просто відкрийте сторінку свого "дзеркального" веб-сайту у своєму браузері, і ви можете переглядати сайт із посилання на посилання, як ніби ви переглядали його в Інтернеті. HTTrack також може оновити наявний дзеркальний сайт та відновити перервані завантаження. HTTrack повністю настроюється та має інтегровану систему довідки.
В системах Linux 'wget' робить це, дуже багато.
Його також було перенесено на кілька інших платформ, як згадується в кількох інших відповідях.
Очевидно, про WGet вже згадували кілька разів. Найкращий інтерфейс, який я знайшов для цього
Існують деякі інші інтерфейси для WGet навколо, деякі з яких є кандидатами на найгірше питання інтерфейсу
Вам потрібно використовувати wget - який доступний для більшості платформ. curl не запитуватиме документи рекурсивно, що є однією з головних переваг wget.
Linux: (зазвичай входить у дистрибутив) http://www.gnu.org/software/wget/
Windows: http://gnuwin32.sourceforge.net/packages/wget.htm
Mac: http: //www.geekology. co.za/blog/2009/02/macports-compile-and-install-open-source-software-on-mac-os-x/
ВИМОЖАЙТЕ, щоб ви не забивали веб-сайт - налаштовуйте відповідні затримки між запитами та переконайтесь, що це передбачено умовами надання сайту.
-Адам
Насправді, слідкуючи за моїм коментарем у публікації GWLlosa, я просто згадав, що у мене встановлений GnuWin32, і досить впевнений, що він містить порт Wget.
http://sourceforge.net/projects/gnuwin32/
GnuWin32 provides Win32-versions of GNU tools,
or tools with a similar open source licence.
The ports are native ports, that is they rely
only on libraries provided with any 32-bits
MS-Windows operating system, such as
MS-Windows 95 / 98 / 2000 / NT / XP
Я використовував це кілька років тому, і це добре працювало. Тільки для Windows. Раніше рекламно, але не більше, мабуть:
wget --random-wait -r -p -e robots=off -U "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" --limit-rate=20k -b http://www.example.com
-p
: параметр повідомляє wget включати всі файли, включаючи зображення.-e robots=off
: ігноруйте сайти правила robots.txt-U "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)"
: рядок агента користувача--random-wait
: не потрапляйте у чорний список--limit-rate=20k
: обмежує швидкість завантаження файлів.-b
: продовжує wget після виходу.
-c
(або --continue
) варіант, коли все піде не так і мені доведеться перезапустити процес.
Я думаю, що грабеж сайту IDM - найкраще рішення, також є Teleport pro
Безкоштовний менеджер завантажень також може завантажувати цілі веб-сайти.
Windows тільки я думаю.