Главная > Управление сетью > wget

wget (рекурсивная загрузка): копирование всего веб-сайта

Функция рекурсивной загрузки wget используется для копирования всего веб-сайта локально или для загрузки файлов с сохранением определенной структуры каталогов. Это очень полезно для зеркалирования веб-сайтов, автономного просмотра и сбора определенных типов файлов. Рекурсивная загрузка активируется опцией `-r`, а различные опции позволяют контролировать глубину загрузки, типы файлов, преобразование ссылок и многое другое.

Обзор

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

Основные возможности

  • Зеркалирование всего веб-сайта и автономный просмотр
  • Сохранение структуры каталогов до указанной глубины
  • Выборочная загрузка только определенных типов файлов
  • Автоматическое преобразование ссылок в локальные пути файлов после загрузки
  • Функция возобновления прерванной загрузки

Основные опции

Основные опции, связанные с рекурсивной загрузкой.

Управление рекурсивной загрузкой

Фильтрация загрузки и поведение

Сгенерированная команда:

Комбинируйте команды.

Описание:

`wget` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Примеры использования

Различные сценарии использования функции рекурсивной загрузки wget.

Базовая рекурсивная загрузка

wget -r http://example.com/docs/

Начинает с указанного URL и загружает файлы, переходя по всем вложенным ссылкам.

Зеркалирование всего веб-сайта

wget -m -k -p http://example.com/

Полностью зеркалирует веб-сайт локально. Преобразует ссылки в локальные пути, загружает все необходимые для страницы файлы и загружает только обновленные файлы, используя временные метки.

Загрузка до определенной глубины

wget -r -l 2 http://example.com/blog/

Ограничивает глубину рекурсии до 2, переходя по вложенным ссылкам только на 2 уровня от начального URL.

Загрузка HTML и связанных файлов (для автономного просмотра)

wget -r -p -k http://example.com/article.html

Загружает указанную HTML-страницу и все необходимые для ее корректного отображения файлы (изображения, CSS, JS и т. д.), а также преобразует ссылки в локальные пути.

Загрузка только определенных расширений

wget -r -A "*.pdf,*.doc" http://example.com/documents/

Рекурсивно загружает только PDF и DOC файлы из указанного каталога.

Установка User-Agent и игнорирование robots.txt

wget -r -U "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36" -e robots=off http://example.com/

Устанавливает User-Agent и игнорирует файл robots.txt для доступа ко всему контенту. (Использовать с осторожностью)

Ограничение скорости загрузки и установка времени ожидания

wget -r --limit-rate=200k --wait=5 http://example.com/

Ограничивает скорость загрузки до 200 КБ/с и ожидает 5 секунд между каждым запросом, чтобы снизить нагрузку на сервер.

Советы и меры предосторожности

Функция рекурсивной загрузки wget мощна, но может создавать чрезмерную нагрузку на сервер или загружать ненужные данные, поэтому использовать ее следует с осторожностью.

Основные советы

  • **Предотвращение нагрузки на сервер**: Используйте опцию `--wait`, чтобы установить время ожидания между запросами и избежать чрезмерной нагрузки на сервер. Также можно использовать опцию `--random-wait` для установки случайного времени ожидания.
  • **Уважение `robots.txt`**: По умолчанию `wget` уважает файл `robots.txt`. Если нет особых причин, лучше воздержаться от использования опции `-e robots=off`. Проверьте политику веб-сайта.
  • **Настройка User-Agent**: Некоторые веб-сайты могут блокировать определенные User-Agent или предоставлять другой контент. Установка общего User-Agent браузера с помощью опции `--user-agent` может быть полезной.
  • **Ограничение глубины загрузки**: Ограничьте глубину рекурсии с помощью опции `-l`, чтобы предотвратить загрузку ненужных вложенных страниц и избежать потери дискового пространства.
  • **Предупреждение о сертификате**: `--no-check-certificate` отключает проверку подлинности SSL/TLS сертификата, что создает риск безопасности. Не рекомендуется использовать на ненадежных сайтах.
  • **Возобновление загрузки**: Используйте опцию `-c` или `--continue`, чтобы возобновить ранее прерванную загрузку. Это полезно для больших файлов или в условиях нестабильной сети.

Те же команды в категории