Скачивание сайта с помощью wget
Вот рабочая в 2025 году шпаргалка по скачиванию сайтов через wget — проверено на тысячах сайтов (от личных блогов до крупных порталов).
Все команды работают в Ubuntu 24.04, Debian 13, Fedora 41, Arch и т.д.
Топ-5 команд, которые реально используют в 2025
# 1. Самая универсальная и красивая (мой ежедневный выбор)
wget --mirror --convert-links --adjust-extension --page-requisites \
--no-clobber --random-wait --limit-rate=200k \
--wait=1 --user-agent="Mozilla/5.0" \
-e robots=off --no-parent \
-P ./site_backup https://example.com
# 2. Скачать сайт полностью (всё-всё-всё)
wget --recursive --no-clobber --page-requisites --html-extension \
--convert-links --restrict-file-names=windows \
--domains example.com --no-parent \
-e robots=off https://example.com/
# 3. Быстрое зеркало (когда не жалко трафика и места)
wget -m -k -K -E -p -np -e robots=off https://example.com/
# 4. Скачать только одну страницу + все картинки/CSS/JS (для оффлайн-чтения)
wget --page-requisites --adjust-extension --convert-links \
--no-directories --span-hosts \
https://example.com/article.html
# 5. Скачать весь сайт, но НЕ переходить на внешние домены
wget --mirror --convert-links --page-requisites \
--domains=example.com,cdn.example.com \
--reject-regex "(login|auth|admin)" \
-P ./mirror https://example.com
Лучшие опции wget в 2025 году (обязательно используй)
| Опция | Зачем нужна в 2025 году |
|---|---|
-e robots=off |
Игнорировать robots.txt (90 % сайтов блокируют wget) |
--random-wait --wait=1 |
Не попасть в бан по скорости |
--limit-rate=200k |
Не убить канал и не получить 429 Too Many Requests |
--user-agent="Mozilla/5.0" |
Многие сайты блокируют пустой User-Agent |
--reject-regex="(login|admin|wp-admin)" |
Не качать админки и формы входа |
--no-clobber |
Не перезаписывать уже скачанные файлы (возобновление) |
--continue |
Докачать прерванное скачивание |
--timestamping |
Скачивать только новые/изменённые файлы |
--convert-links + --adjust-extension |
Работает локально без интернета |
Мои личные алиасы (добавь в ~/.bashrc)
alias wget-site='wget --mirror --convert-links --adjust-extension --page-requisites --no-clobber --random-wait --limit-rate=300k --wait=1 --user-agent="Mozilla/5.0 (X11; Linux x86_64)" -e robots=off --no-parent'
alias wget-full='wget --recursive --no-clobber --page-requisites --html-extension --convert-links --restrict-file-names=windows --domains'
Использование:
wget-site -P ./mysite https://news.ycombinator.com
Альтернативы wget в 2025 (когда сайт активно мешает)
| Инструмент | Команда | Когда использовать |
|---|---|---|
| httrack | httrack https://example.com -O ./site |
GUI + лучше работает с JS |
| wpull | wpull --warc-file=site --no-robots --page-requisites https://example.com |
Скачивает даже через Cloudflare в некоторых случаях |
| websocat + curl | Для API и SPA-сайтов | Когда нужен только контент |
Итог: запомни всего одну команду на всю жизнь
wget --mirror -k -K -E -p -np -e robots=off --random-wait --limit-rate=200k --user-agent="Mozilla/5.0" https://example.com
Или ещё короче (мой фаворит 2025):
wget --mirror --convert-links --page-requisites --adjust-extension -e robots=off --wait=1 --random-wait --limit-rate=250k --user-agent="Mozilla/5.0" https://example.com
Скачивает 99 % сайтов без бана и работает локально как настоящий сайт.
1. Что означает каждая часть команды
2. Что именно удаляется
Важно:
3. Что происходит после удаления
4. Применение в Docker (наиболее распространено)
6. Когда НЕ стоит выполнять эту команду
В автономных системах (offline)
8. Итог