Справочник по командам Wget (скачивание файла из Интернет). Русский мануал к программе WGet Wget рекурсивное скачивание

Wget –это в основном инструмент командной строки, который позволяет неинтерактивную загрузку файлов из Интернета. Неинтерактивный- это значит то, что программа может работать в фоновом режиме, пока пользователь не вошел в систему. Поддерживаемые протоколы включают HTTP, HTTPS и FTP.

Wget также поддерживает извлечение через http-прокси, и "вы можете перейти по ссылкам с HTML, XHTML и CSS на страницы, создавать там локальные версии удаленных веб-узлов, полностью воссоздав структуру каталогов оригинального сайта."

Как работает Wget?

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

1. Как скачать файл с помощью wget ?

Файл- инструмент загрузки будет сохранен в текущем рабочем каталоге пользователя. Вот как вы можете использовать wget при скачивании файла:

Wget

Вот пример скриншота:

2. Как возобновить загрузки с помощью Wget?

В случае, если ваши текущие загрузки прервались из-за плохого интернет-соединения или по какой-либо другой причине, вы можете возобновить их, повторив ту же команду еще раз, но с использованием командной строки -с:

Wget -c

Вот пример скриншота (см. вторая команда):

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

3. Как скачать файл имеющий другое имя?

По умолчанию, Wget сохраняет файл с тем же именем, которое он несет в Интернете. Но если вы хотите, вы также можете сохранить загруженный файл с другим именем. Эта функция осуществляется с помощью команды -O (верхний регистр) параметра командной строки.

$ wget -O

Вот пример скриншота:

4. Как перенаправить wget-вывод в файл журнала?

Если вы хотите, вы также можете перенаправить сообщения/информацию через wget, который выдает вывод на стандартный файл журнала. Это можно сделать с помощью -о (строчной) параметра командной строки.

$ wget -o

Вот пример снимка:

Как вы можете видеть на скриншоте выше, нет вывода или сообщения отображающихся на стандартный вывод. Это потому, что все сообщения перенаправляются на файл журнала с именем «abc.log».

Вы можете просмотреть лог-файл с помощью команды Cat.

$ cat abc.log

Вот что пишет лог-файл в нашем случае:

5. Как скачать файлы в фоновом режиме с помощью wget

Используя этот инструмент, вы можете качать файлы в фоновом режиме. Загруженный файл будет сохранен с именем ‘wget-log.’. Эта функция доступна с помощью -б параметра командной строки.

$ wget -b

Вот пример:

Обратите внимание, что вы можете изменить имя файла с помощью-o (в Нижнем регистре) как это сделать мы объяснили ранее.

6. Как ограничить скорость загрузки при использовании Wget?

При использовании Wget, вы также можете ограничить скорость загрузки. Это можно сделать с помощью опции -limit-rate, которая требует значения в байтах в секунду. Сумма может быть в байтах, килобайтах с суффиксом«K» или мегабайтах с суффиксом «M».

$ wget –limit-rate=

Вот пример, как ограничить скорость загрузки до 50к:

7. Как изменить время чтения команды wget ?

Тайм-аут чтения-это количество времени (в секундах), за которое проверяются данные с использованием wget (в случае не получения данных), прежде чем возобновить загрузку. По умолчанию тайм-аута чтения длится 900 секунд, но вы можете изменить время с помощью чтения-тайм-аут.

$ wget –read-timeout=

Вот пример:

8. Как изменить количество повторных попыток?

Если загрузка прерывается из - за плохого подключения к Интернету или из-за любой другой ошибки, инструмент пытается возобновить загрузку. По умолчанию, утилит пытается это сделать 20 раз, а затем останавливается. Но если вы хотите увеличить или уменьшить число попыток, вам следует воспользоваться опцией -t командной строки.

$ wget -t

Вот пример:

Как вы видите на скриншоте выше, wget сдался после двух попыток.

Примечание: Эта функция,за исключением критических ошибок "отказ в соединении" или "не найдено" (404), не повторяется.

9. Как заставить wget отображать отладочную информацию?

Если вы хотите, вы также можете сделать так,чтобы команда wget отображала дополнительную информацию, относящеюся к процессу загрузки. Эта информация полезна для отладки, если инструмент работает неправильно. Функцию можно получить с помощью –debug или -D параметров.

$ wget –debug

Вот пример:

10. Как изменить индикатор выполнения загрузки Wget ?

Если вы хотите, вы также можете изменить индикатор загрузки файла отображающегося в выходных данных. Существует два типа показателей: bar (который по умолчанию) и dot. Тем не менее, если выход не отображается на терминале (TTY), то точка индикатора используется по умолчанию.

Опция --progress позволяет выбрать тип индикатора,если вы хотите переопределить поведение по умолчанию. Например:

$ wget --progress=dot

$ wget -–progress=:

«type» может быть bar или dot в то время как «параметр» может определятся по умолчанию, двоичный, мега или гига.

Например, если вы хотите установить «type» в качестве dot и двоичный «parameter», то вы можете использовать следующую команду:

$ wget -–progress=dot:binary

Вот пример:

Обратите внимание на то,какой параметр вы выбираете (двоичный, мега или гига), как правило,это зависит от размера загружаемого файла. Вот что на Man-странице говорит об этих стилях:

В стиле "по умолчанию" каждая точка соответствует 1к, то есть десять точек в кластере и 50 точек в линии. "Бинарный" стиль более компьютезированный как ориентация---8к dots, 16-dots кластеров и 48 dots в строке (для 384 тыс. строк). "Мега" стиль подходит для скачивания больших файлов---каждая точка представляет 64К, существует восемь dots на кластер и 48 dots в каждой строке (так что каждая строка содержит 3М). Если "мега" не достаточно, то вы можете использовать "гига" стиль---каждая dots представляет 1М проверено восемь dots в кластере, и 32 dots в каждой строке (так каждая строка содержит 32М).

Заключение

Это совсем немного из тех дополнительных опций командной строки,что предлагает wget. Однако, тех, которые мы здесь обсудили, должно быть достаточно. Попробуйте эти, и в случае каких-либо сомнений или запроса, обратитесь к команде Man.

М ы покажем вам 10 практических примеров команды wget. wget это бесплатная утилита, которая может быть использована для извлечения файлов с использованием HTTP, HTTPS и FTP, которые рассматриваются в качестве наиболее широко используемых протоколов Интернета.

Ее название происходит от World Wide Web + get. wget имеет много особенностей, что делает ее очень легкой задачей, когда речь идет о получении больших файлов, рекурсивные загрузки, несколько загрузок файлов или зеркалирование целых веб-сайтов или FTP.

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

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

Для этой демонстрации, мы установим wget на .

Обратите внимание, что даже если это было проверено на Ubuntu 16.04, инструкции также могут быть использованы на любом другом дистрибутиве .

Вход на сервер и установка wget

Вы также можете убедиться, что ваш сервер находится в актуальном состоянии с помощью следующих команд:

Apt-get update apt-get upgrade

После того, как были установлены обновления, вы можете установить пакет программного обеспечение wget с помощью следующей команды:

Apt-get install wget

После того, как установка будет завершена, вы можете начать использовать команду wget на сервере.

1. Команда wget для загрузки одного файла

Наиболее распространенное и простое использование wget, это скачать один файл и сохранить его в текущем каталоге.

Например, чтобы загрузить последнюю версию можно использовать следующую команду:

Wget https://wordpress.org/latest.zip

Это вывод, который вы получите во время загрузки файла:

2017-10-24 16:46:24-- https://wordpress.org/latest.zip Resolving wordpress.org (wordpress.org)... 66.155.40.249, 66.155.40.250 Connecting to wordpress.org (wordpress.org)|66.155.40.249|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 8912693 (8.5M) Saving to: "latest.zip" latest.zip 100%[=============================================================================>] 8.50M 3.83MB/s in 2.2s 2017-10-24 16:46:27 (3.83 MB/s) - "latest.zip" saved root@destroyer:~#

Как вы можете видеть, она также показывает прогресс загрузки, текущую скорость загрузки, размер, дату, время и имя файла.

В нашем случае эта команда загрузит файл и сохранит его в текущем каталоге под именем «latest.zip».

2. Команда wget для загрузки файла и сохранение его под другим именем

Wget -O wordpress.zip https://wordpress.org/latest.zip

Она загрузит и сохранит последнюю в текущем каталоге под названием «wordpress.zip».

3. Команда wget для загрузки файла и сохранение его в определенном каталоге

Wget -P /opt/wordpress https://wordpress.org/latest.zip

Она скачает и сохранит файл в каталоге /opt/wordpress на сервере.

4. Команда wget, чтобы установить скорость загрузки

Если вы случайно загрузите огромный файл, который занимает больше времени, чем необходимо для полной загрузке, вы можете ограничить скорость загрузки для предотвращения wget с использованием полной возможной пропускной способности соединения.

Чтобы ограничить скорость загрузки, например до 300k, вы можете использовать следующую команду:

Wget --limit-rate=300k https://wordpress.org/latest.zip

5. Команда wget для продолжения прерванной загрузки

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

Для того, чтобы избежать повторного запуска всей загрузки, вы можете продолжить, откуда прерывалось скачивание с помощью опции -c :

Wget -c https://wordpress.org/latest.zip

6. Команда wget для загрузки в фоновом режиме

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

Wget -b http://example.com/big-file.zip

Вывод будет записан в файле «wget-log» в том же каталоге, и вы всегда можете проверить статус загрузки с помощью следующей команды:

Tail -f wget-log

7. Команда wget, увеличение повторных попыток

Если у вас возникли проблемы с подключением к Интернету, и загрузка становится прерванной несколько раз, вы можете увеличить повторные попытки загрузить файл с опции -tries :

Wget -tries=100 https://example.com/file.zip

8. Команда wget для загрузки нескольких файлов

Если вы хотите загрузить несколько файлов в одно и то же время, вы можете создать текстовый файл (например download.txt), где разместить все URL-адреса файлов, которые вы хотите загрузить. Для создания текстового файла выполните следующие действия:

Touch download.txt

После этого вы можете отредактировать файл с nano и ввести все URL-адреса всех файлов, которые вы хотите загрузить:

Nano download.txt http://example.com/file1.zip http://example.com/file2.zip http://example.com/file3.zip

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

Wget -i download.txt

9. Команда wget для загрузки через FTP

Вы также можете использовать wget для загрузки файла непосредственно через FTP, используя набор имя пользователя и пароль, с помощью следующей команды:

Wget --ftp-user=username --ftp-password=password ftp://url-to-ftp-file

10. Команда wget для скачивания всего сайта

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

Wget --mirror --convert-links --page-requisites ----no-parent -P /path/to/download https://example-domain.com

С -mirror , вы включите все опции, необходимые для зеркального отображения.

С –convert-links , вы будете конвертировать все ссылки, так что они будут работать в автономном режиме.

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

С –no-parent , вы можете ограничить загрузку только к определенной части сайта.

Кроме того, вы можете установить путь туда, куда мы хотим загрузить файлы с помощью команды -P, а затем путь к каталогу.

Мы рассмотрели некоторые из наиболее распространенных видов использования команды wget. Чтобы узнать больше о wget, вы всегда можете проверить его страницу с помощью команды man wget .

Работая в консоли, нам достаточно часто приходится взаимодействовать с сетью, например скачивать файлы или целые интернет страницы. Если интернет страницы мы скачиваем довольно редко, то с файлами дело обстоит совсем по другому. Это могут быть различные скрипты, установочные пакеты, программы, ключи, списки пакетов и многое другое. Скачать файл в консоли Linux можно с помощью утилиты wget. Ее мы и рассмотрим в этой статье.

Это очень мощная утилита, способная работать по протоколам HTTP, HTTPS и FTP. Кроме того поддерживается работа через прокси. Команда wget linux, может выполнять загрузку файлов даже в фоновом режиме - без участия пользователя, в отличии от большинства веб браузеров.

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

Команда wget linux имеет очень простой синтаксис:

$ wget опции аддресс_ссылки

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

Опции

Синтаксис опций очень свободный. У каждой опции, как правило есть как длинное, так и короткое имя. Их можно записывать как до URL, так и после. Между опцией и ее значением не обязательно ставить пробел, например вы можете написать -o log или -olog. Эти значения эквивалентны. Также если у опций нет параметров, не обязательно начинать каждую с дефиса, можно записать их все вместе: -drc и -d -r -c. Эти параметры wget тоже эквивалентны.

А теперь давайте перейдем к списку опций. У wget слишком много опций, мы разберем только основные.

  • -V (--version) - вывести версию программы
  • -h (--help) - вывести справку
  • -b (--background) - работать в фоновом режиме
  • -o файл (--out-file) - указать лог файл
  • -d (--debug) - включить режим отладки
  • -v (--verbose) - выводить максимум информации о работе утилиты
  • -q (--quiet) - выводить минимум информации о работе
  • -i файл (--input-file) - прочитать URL из файла
  • --force-html - читать файл указанный в предыдущем параметре как html
  • -t (--tries) - количество попыток подключения к серверу
  • -O файл (--output-document) - файл в который будут сохранены полученные данные
  • -с (--continue) - продолжить ранее прерванную загрузку
  • -S (--server-response) - вывести ответ сервера
  • --spider - проверить работоспособность URL
  • -T время (--timeout) - таймаут подключения к серверу
  • --limit-rate - ограничить скорость загрузки
  • -w (--wait) - интервал между запросами
  • -Q (--quota) - максимальный размер загрузки
  • -4 (--inet4only) - использовать протокол ipv4
  • -6 (--inet6only) - использовать протокол ipv6
  • -U (--user-agent) - строка USER AGENT отправляемая серверу
  • -r (--recursive )- рекурсивная работа утилиты
  • -l (--level) - глубина при рекурсивном сканировании
  • -k (--convert-links) - конвертировать ссылки в локальные при загрузке страниц
  • -P (--directory-prefix) - каталог, в который будут загружаться файлы
  • -m (--mirror) - скачать сайт на локальную машину
  • -p (--page-requisites) - во время загрузки сайта скачивать все необходимые ресурсы

Кончено это не все ключи wget, но здесь и так слишком много теории, теперь давайте перейдем к практике. Примеры wget намного интереснее.

Использование wget Linux

Команда wget linux, обычно поставляется по умолчанию в большинстве дистрибутивов, но если нет, ее можно очень просто установить. Например установка с помощью yum будет выглядеть следующим образом:

yum -y install wget

А в дистрибутивах основанных на Debian:

sudo apt install wget

Теперь перейдем непосредственно к примерам:

Команда wget linux скачает один файл и сохранит его в текущей директории. Во время загрузки мы увидим прогресс, размер файла, дату его последнего изменения, а также скорость загрузки:

wget http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

2. Сохранить файл с другим именем

Опция -О позволяет задать имя сохраняемому файлу, например, скачать файл wget с именем wget.zip:

wget -O wget.zip http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

3. Скачать несколько файлов

Вы можете скачать несколько файлов одной командой даже по разным протоколам, просто указав их URL:

wget http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz ftp://ftp.gnu.org/gnu/wget/wget-1.10.1.tar.gz.sig

4. Взять URL из файла

wget -i /wget/tmp.txt

5. Продолжить загрузку

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

wget -c http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

Опция -b заставляет программу работать в фоновом режиме, весь вывод будет записан в лог файл, для настройки лог файла используются специальные ключи wget:

wget -b -o ~/wget.log http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

7. Ограничение скорости загрузки

Команда wget linux позволяет не только продолжать загрузку файлов, но и ограничивать скорость загрузки. Для этого есть опция --limit-rate. Например ограничим скорость до 100 килобит:

wget --limit-rate=100k ftp://ftp.iinet.net.au/debian/debian-cd/8.4.0/amd64/iso-dvd/debian-8.4.0-amd64-DVD-1.iso

Здесь доступны, как и в других подобных командах индексы для указания скорости - k - килобит, m - мегабит, g - гигабит, и так далее.

8. Подключение по логину и паролю

Некоторые ресурсы требуют аутентификации, для загрузки их файлов. С помощью опций --http-user=username, –http-password=password и --ftp-user=username, --ftp-password=password вы можете задать имя пользователя и пароль для HTTP или FTP ресурсов.

wget --http-user=narad --http-password=password http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso

wget --ftp-user=narad --ftp-password=password ftp://ftp.iinet.net.au/debian/debian-cd/6.0.5/i386/iso-dvd/debian-6.0.5-i386-DVD-1.iso

9. Загрузить и выполнить

Вы, наверное, уже видели такие команды. wget позволяет сразу же выполнять скачанные скрипты:

wget -O - http://сайт/скрипт.sh | bash

Если опции -O не передать аргументов, то скачанный файл будет выведен в стандартный вывод, затем мы его можем перенаправить с интерпретатор bash, как показано выше.

10. Сохранить файл в папке

По умолчанию wget сохраняет файл в текущую папку, но это поведение очень легко изменить с помощью опции -P:

wget -P ~/Downloads/ http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

11. Передать информацию о браузере

Некоторые сайты фильтруют ботов, но мы можем передать фальшивую информацию о нашем браузере (user-agent) и страницу с которой мы пришли (http-referer).

wget ‐‐refer=http://google.com ‐‐user-agent=”Mozilla/5.0 Firefox/4.0.1″ //сайт

12. Количество попыток загрузки

По умолчанию wget пытается повторить загрузку 20 раз, перед тем как завершить работу с ошибкой. Количество раз можно изменить с помощью опции --tries:

wget --tries=75 http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso

13. Квота загрузки

Если вам доступно только ограниченное количество трафика, вы можете указать утилите, какое количество информации можно скачивать, например разрешим скачать файлов из списка только на десять мегабайт.

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

Что такое Wget?

Wget (которая также именуется GNU Wget Linux) представляет собой консольное, не интерактивное приложение для работы с файлами и веб-страницами. По сути, это программа для скачивания файлов из сети Интернет, отличающаяся отсутствием графического интерфейса и рядом особенностей в управлении, нетипичных для более современных решений.

Программа была разработана инженером из Хорватии Хрвожи Никшичем, а ныне разработку поддерживает Джузеппе Скривано и сообщество Linux. Первая сборка утилиты (тогда еще под названием GetURL) была представлена в январе 1996 года. Программа была написана на языке программирования Си и издавалась по лицензии GNU. Изначально инструмент был выпущен на платформе Linux. Со временем утилита была переведена на множество языков и портирована на все популярные платформы, включая Wget для Windows 7 (и новее), Wget для MacOS и так далее.

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

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

Основные функции программы

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

Wget может загружать любые материалы из сети Интернет, будь то документы, исполнительные файлы или целые веб-страницы в формате HTML (по различным протоколам). Файлы могут быть загружены из директорий по

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

Изначально Wget адаптировался под медленные и нестабильные типы подключений, поэтому его важной особенность является возможность восстановить прерванную загрузку файла (это возможно, если сервер поддерживает заголовки RANGE). Также Wget может мониторить состояние серверов (их доступность) для дозагрузки и обновления (Wget проверяет заголовки файлов и поддерживает самую свежую версию) файлов и веб-страницы.

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

Поддерживаемые платформы

Wget Linux стал базой для данного продукта. Как уже было сказано выше, изначально утилита работала лишь на Linux, но быстро набрала популярность и была адаптирована под другие системы. Например, можно отыскать версию Wget для Windows 7 и более современных ОС, причем есть сборки с графическим интерфейсом. Что касается Linux, то там программа нередко вшивается в дистрибутив. Терминалы в некоторых сборках Linux изначально поддерживают Wget-команды. Ubuntu, Fedora, openSUSE и прочие потребительские дистрибутивы работают с программой, что называется, из коробки. Далее рассмотрим программу более подробно.

Wget-команды: список основных параметров

В базовый список команд входят:

  • -V - позволяет узнать, какая версия программы используется в данный момент;
  • -h - показывает наиболее полный список команд для работы с приложением;
  • -b - позволяет перевести программу в фоновый режим;

Список параметров сообщений

Wget-команды позволяют полностью контролировать отображаемую информацию. Вот их список:

  • -o logfile - создает файл-журнал, в который записывается весь процесс работы приложения;
  • -a logfile - позволяет дополнить существующий файл-журнал вместо создания нового;
  • -d - отображает необходимую разработчикам и отладчиком информацию (помогает решать проблемы и исправлять ошибки в работе клиента);
  • -q - отключает отображение сообщений;
  • -v - данная опция включена по умолчанию, предоставляет подробный отчет обо всех процессах, происходящих в программе (в реальном времени);
  • -nv - значительно сокращает информацию, получаемую пользователем в сообщениях. Остаются лишь самые необходимые данные и оповещения об ошибках;
  • -i file (с указанием пути к файлу) - команда позволяет просканировать файл, вычленив из него ссылку и выполнить загрузку; можно использовать файлы различных форматов, в том числе HTML, но в случае использования данной команды не стоит указывать путь к файлу в командной строке;
  • -f - провоцирует программу на чтение файла как HTML; при использовании этой команды для работы с локальным HTML документом, может произойти ошибка, чтобы ее избежать, достаточно указать в документе .

Список параметров загрузки

Основные команды для работы с с помощь Wget. Вот их базовый набор:

  • --bind-address=ADDRESS - данная команда позволяет передать данные bind в ADDRESS локальной машины. При использовании соединения TCP/IP, команда необходима для точного указания IP-адреса (если их несколько).
  • -t number (нужно указать число) - позволяет пользователю выбрать количество повторов загрузки. Чтобы избежать повторов следует указать значение number равное нулю.
  • -nc - данная команда позволяет вернуть прежнее состояние загружаемого файла в том случае, если произошел сбой в сети, и загрузка прервалась. Если не использовать одну из команд для дозагрузки (-N, -nc, -r), то Wget создаст его копию и начнет загрузку заново. Параметр -r позволяет заменить существующие файлы.
  • -с - также способствует дозагрузке файла, в случае потери соединения (и когда Wget прекратил самостоятельные попытки восстановления подключения). Достаточно перед ссылкой на файл указать данную команду. Если в используемой директории найдется аналогичный файл, то Wget проведет его идентификацию и в автоматическом режиме примет решение о его дозагрузке. Команду можно использовать лишь на тех серверах, где имеется поддержка заголовков RANGE.

  • --progress - позволяет выбрать тип отображения прогресса загрузки. Можно указать -progress=bar или progress=dot.
  • --spider - заменяет команду загрузки файла на проверку его наличия на сервере;
  • -w (в секундах) - указывает время перерыва между загрузками.
  • -q (указывается в количестве килобайт или мегабайт) - позволяет четко регулировать размер загружаемых данных и лимитировать чрезмерные объемы. Тем не менее стоит заметить, что один файл будет загружен независимо от выставленной квоты (то бишь с одним файлом эта опция работать не будет, какой-бы он не был тяжелый).

Список параметров HTTP

  • --http-user= и --http-passwd= - позволяют указать логин и пароль для авторизации на веб-ресурсе, с которого будут выгружаться файлы.
  • -C = on/off - позволяет включить или выключить кеширование данных на стороне сервера.
  • --cookies = on/off - то же самое, что и для cache, только для cookies. Позволяет либо остановить, либо возобновить обмен данными cookie, необходимыми серверу для ведения статистики посещений. По умолчанию опция включена, но cookie-файлы не сохраняются на жесткий диск.
  • --save-cookies - позволяет сохранить файлы cookie (только свежие данные).
  • --proxy-user и -proxy-passwd - позволяет указать логин и пароль для авторизации на прокси-сервере (если таковой задействован).

Список параметров FTP

Продвинутые параметры для работы с Wget. Команды FTP:

  • -nr - запрещает удалять временные файлы из директории.listing, которые самопроизвольно генерируются при работе с FTP;
  • -g on/off - позволяет использовать утилите специальные символы в директориях FTP;
  • --passive-ftp - данную команду можно использовать при наличии Firewall’а, чтобы активировать пассивный режим FTP (когда пользователь сам отвечает за установку соединения с сервером).

Wget-команды: примеры использования

Самым простым и банальным примером для работы с программой является, конечно, загрузка файлов. Чтобы протестировать Wget-команды, можно начать с простого, найти ссылку на какой-либо файл в сети и ввести в консоль/terminal: Wget *ссылка с указанием точного и полного пути к файлу*.

Чтобы продолжить загрузку файла, используется: Wget -c *ссылка с указанием точного и полного пути к файлу*.

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

Чтобы эта же страница оказалась доступной для просмотра без подключения к сети Интернет, можно использовать команду Wget -r -10 -k *ссылка с указанием точного и полного пути к файлу*.

Ошибка формата Wget команда не найдена может означать любую опечатку и неправильно указанный параметр.

Introduction to GNU Wget

GNU Wget is a free software package for retrieving files using HTTP, HTTPS, FTP and FTPS the most widely-used Internet protocols. It is a non-interactive commandline tool, so it may easily be called from scripts, jobs, terminals without X-Windows support, etc.

GNU Wget has many features to make retrieving large files or mirroring entire web or FTP sites easy, including:

  • Can resume aborted downloads, using and
  • Can use filename wild cards and recursively mirror directories
  • NLS-based message files for many different languages
  • Optionally converts absolute links in downloaded documents to relative, so that downloaded documents may link to each other locally
  • Runs on most UNIX-like operating systems as well as Microsoft Windows
  • Supports HTTP proxies
  • Supports HTTP cookies
  • Supports persistent HTTP connections
  • Unattended / background operation
  • Uses local file timestamps to determine whether documents need to be re-downloaded when mirroring
  • GNU Wget is distributed under the GNU General Public License.

The source code for GNU Wget can be found on here or on our mirrors.
For more download options, see the FAQ.

Documentation

GNU Wget documentation can be found here.
For manuals of other GNU packages, please see www.gnu.org.

Additional Information

Currently GNU Wget2 is being developed.
Please help us if you can with testing, docs, organization, development, … see you at Wget2 collaboration site

Maintainer

GNU Wget is currently being maintained by Tim Rühsen, Darshit Shah and Giuseppe Scrivano.
The original author of GNU Wget is Hrvoje Nikšić.
Please do not directly contact either of these individuals with bug reports, or requests for help with Wget: that is what the mailing list is for; please use it instead.

Donators

We thank the TYPO3 & Magento partner AOE media for donating to the wget project.

wget — ПОВЕЛИТЕЛЬ ЗАКАЧЕК
(ЗАГРУЗКА ФАЙЛОВ И САЙТОВ ИЗ ИНТЕРНЕТА В GNU/LINUX)

О любви wget так много песен спето,
Я спою, тебе спою, ещё одну…

Романс из к/ф «Три друга»

Задача: хочется Teleport Pro и FlashGet для Линукс, качать сайты и файлы.

Решение: откройте для себя wget — это всё в одном флаконе и даже больше.

Часто ищут прежде всего множество графических программ с несколькими кнопками — но есть одна утилита, способная заменить их и предоставляющая возможности, которых больше нигде нет.

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

Стоит сказать, что man wget при первом взгляде производит сокрушительное впечатление, однако потом понимаешь, что далеко не все опции нужны при повседневном использовании. Ниже приводятся наиболее часто используемые мною опции.

Использование а-ля «FlashGet for Linux»

Нужно просто скачать файл и/или продолжить закачку, которая оборвалась. Это очень и очень легко сделать, написав в терминале несколько строчек.

Просто скачать файл wget-ом:

$ wget ftp://vasya.pupkin.com/film.avi

Ещё вариант: часть файла скачана, закачка оборвалась.

Для продолжения закачки файла пишем:

$ wget -c ftp://vasya.pupkin.com/film.avi или $ wget —continue ftp://vasya.pupkin.com/film.avi

Вместо -с можно написать —continue, так как каждый ключ имеет короткую и длинную формы: длинные ключи проще запомнить, но дольше писать. Можно легко смешивать различные формы написания.

Чтобы выкачать файлы из списка, содержащего прямые ссылки:

$ wget -i pupkinlist или $ wget —input-file=pupkinlist

Здесь указывается только файл , в котором содержатся ссылки. Файл может так же быть html-страницей, в которой есть ссылки.

Windows. Установка wget в Windows XP/7/8/8.1/10

Они будут выкачаны указанной выше командой.

Использование а-ля «Teleport Pro for Linux»

При скачивании веб-сайтов возможностей больше, и поэтому требуется больше ключей. Опять-таки, запоминать их все не обязательно, можно сделать скрипт (а лучше несколько — под разные случаи) и вызывать их.

Зеркалирование сайтов на локальную машину:

$ wget -m http://www.vasyapupkin.com/

Копирование сайта для локального просмотра:

$ wget -r -l0 -np -k http://www.vasyapupkin.com/

При этом будет включена рекурсивная выгрузка (ключ -r, —recursive), то есть не только файлы с главной страницы, но и все остальные, на которые ведут ссылки (ключ -l0 бесконечная вложенность ссылок).

Имена ссылок будут переконвертированы в локальные для удобства просмотра (ключ -k). Так же при помощи ключа -np (no-parrent) можно запретить wget подниматься выше начального адреса при рекурсивной загрузке, то есть если вы копируете http://home.vasyapupkin.com/ то по ссылкам с основного сайта http://www.vasyapupkin.com/ скопированы не будут.

Несколько полезных ключей

Включение и исключение файлов при загрузке:

A acclist или —accept acclist -R rejlist или —reject rejlist

Задаёт разделяемые запятыми шаблоны имён файлов, которые следует загружать (acclist) или игнорировать (rejlist).

K или —convert-links

Превращает абсолютные ссылки (типа http://www…) в относительные (типа file///home/vasya/www/index.html) для удобства локального просмотра. Чтобы локально в броузере просмотреть скачанный сайт, открываете файл index.html в броузере и бродите по ссылкам точно так же, как если бы вы были подключены к интернету.

H или —span-hosts

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

P или —page-requisites

Загружает все файлы, которые нужны для отображения страниц html. Например: рисунки, звук и каскадные стили. После завершения загрузки конвертирует ссылки в документе для просмотра в автономном режиме. Это касается не только видимых ссылок на другие документы, а ссылок на все внешние локальные файлы.

siteget — простой скрипт для скачивания сайтов

Если вам надоели все эти премудрости с ключами wget и нужно просто скачать сайт, то siteget вам определённо понравится. Это довольно простой скрипт с необходимыми параметрами для загрузки сайта.

Загрузить скрипт можно отсюда. После закачки на компьютер имеет смысл скопировать его в режиме суперпользователя в одну из директорий, прописанных в переменной $PATH: операционная система автоматически просматривает их в поисках исполняемых файлов. Например, в директорию /user/local/bin :

# cp {директория, где находится скрипт}/siteget /user/local/bin/siteget

Скрипту также необходимо присвоить атрибут исполняемого файла:

# chmod a+x /usr/local/bin/siteget

Использование siteget очень простое:

$ siteget http://www.vasyapupkin.com/

Кафедра библеистики МДА, 2008.
Последнее обновление:
Адрес в интернете: http://www.bible-mda.ru/soft/wget/wget.html

Просто скачать файл wget-ом:

wget ftp://vasya.pupkin.com/film.avi

Для продолжения оборвавшейся закачки пишем:

wget -c ftp://vasya.pupkin.com/film.avi

wget —continue ftp://vasya.pupkin.com/film.avi

Как и в других программах, ключи имеют короткую и длинную формы, и вместо можно написать. Длинные ключи проще запомнить, но дольше писать. Можно легко смешивать различные формы написания.

Чтобы выкачать файлы из списка , содержащего прямые ссылки:

wget -i pupkinlist.txt

wget —input-file=pupkinlist.txt

Здесь указывается только файл, в котором содержатся ссылки. Файл может так же быть -страницей, в которой есть ссылки. Они будут выкачаны указанной выше командой.

Использование а-ля «Teleport Pro for Linux».

При скачивании веб-сайтов возможностей больше, и поэтому требуется больше ключей.

Опять-таки, запоминать их все не обязательно, можно сделать скрипт (а лучше несколько — под разные случаи) и вызывать их.

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

Зеркалирование сайтов на локальную машину:

wget -m http://www.vasyapupkin.com/

эквивалентно, эти опции описаны ниже.

Копирование сайта для локального просмотра (с заменой интернет-ссылок на локальные адреса скачанных страниц):

wget -r -l0 -k http://www.vasyapupkin.com/

При этом будет включена рекурсивная выгрузка (ключ -r, –recursive),

В wget имеется большое количество полезных опций — побольше, чем у Teleport"а флажков. Будучи завёрнутым в скрипт, например, и положенным на видное место (указанное в), имеем удобство применения и богатство настроек.

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

Включить рекурсивный просмотр каталогов и подкаталогов на удалённом сервере.

Определить максимальную глубину рекурсии равной depth при просмотре каталогов на удалённом сервере. По умолчанию depth=5.

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

Список имен файлов, разделенных запятыми, которые следует (accept) или не следует (reject) загружать. Разрешается задание имен файлов по маске.

Wget для Windows. Установка и использование.

Превратить абсолютные ссылки в документе в относительные ссылки. Преобразованию подвергнутся только те ссылки, которые указывают на реально загруженные страницы; остальные не будут преобразовываться. Заметим, что лишь в конце работы wget сможет узнать какие страницы были реально загружены. Следовательно, лишь в конце работы wget будет выполняться окончательное преобразование.

Указать имя пользователя и пароль на -сервере.

Разрешает посещать любые сервера, на которые есть ссылка.

Загружать все файлы, которые нужны для отображения страниц. Например: рисунки, звук, каскадные стили (). По умолчанию такие файлы не загружаются. Параметры и, указанные вместе могут помочь, но т.к. wget не различает внешние и внутренние документы, то нет гарантии, что загрузится все требуемое.

Ссылки

Информация о программе

Wget это консольная утилита для загрузки файлов с использованием HTTP, FTP протоколов и прокси-соединения.

wget для Windows

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

Приложение поддерживает возобновление работы при возникновении ошибки или обрыве связи, рекурсивную скачку с указанием маски имени и глубины перехода по ссылкам. Умеет авторизоваться на FTP сервере, подключаться в фоновом режиме к защищенным https сайтам.

Программа способна вести подробный лог, является оптимальным средством для создания зеркал удаленных хранилищ или веб-ресурсов, поточного копирования данных с FTP серверов.

Скачать бесплатно полную русскую версию Wget с официального сайта без регистрации и смс.

Системные требования

  • Поддерживаемые ОС: Windows XP, 7, 10, 8, Vista, 8.1
  • Разрядность: 32 bit, x86, 64 bit

Wget - консольный загрузчик для скачивания сайтов и его использование в Windows

wget - консольная утилита для скачивания файлов/сайтов, умеет выкачивать файлы рекурсивно, следуя по ссылкам автоматически.

Команда Описание
wget http://example.com/file.zip скачивание файла file.zip в текущую директорию
wget -P /path/to/save http://example.com/file.zip скачивание файла file.zip в директорию /path/to/save
wget -c http://example.com/file.zip докачивание файла file.zip в случаи обрыва
wget -O arch.zip http://example.com/file.zip скачивание файла file.zip и сохранение под именем arch.zip
wget -i files.txt скачивание файлов из списка в files.txt
wget —tries=10 http://example.com/file.zip количество попыток на скачивание
wget -Q5m -i http://example.com/ квота на максимальный размер скачанных файлов, квота действует только при рекурсивном скачивании (-r)
wget —save-cookies cookies.txt —post-data ‘username=proft&password=1’ http://example.com/auth.php идентификация на сервере с сохранением кук для последующего доступа
wget —user-agent=»Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.9 Safari/536.5″ http://example.com/ указание User Agent
echo ‘wget http://example.com/file.zip’ | at 12:00 скачать http://example.com/file.zip в 12:00 в текущую директорию
wget ftp://example.com/dir/*.zip
wget http://example.com/dir/file{1..10}.zip скачивание всех файлов по шаблону
wget -S http://example.com/ вывод заголовков HTTP серверов и ответов FTP серверов
wget —spider -i urls.txt проверка ссылок в файле на доступность
wget -b http://example.com/file.zip скачивание файла в фоне, лог пишется в wget.log, wget.log.1 и т.д.
export http_proxy=http://proxy.com:3128/;wget http://example.com/file.zip скачивание файла *file.zip* через прокси
wget -m -w 2 http://example.com/ зеркалирование сайта с сохранением абсолютных ссылок и ожиданием 2-х секунд между запросами
wget —limit-rate=200k http://example.com/file.zip ограничение скорости скачивания
wget -R bmp http://example.com/ не скачивать bmp файлы
wget -A png,jpg http://example.com/ скачивать только файлы png и jpg

Пример использования для скачивания документации Django :

  • — ходим по ссылкам (рекурсивное скачивание)
  • — преобразовываем ссылки к локальному виду
  • — скачивание ресурсов необходимых для отображения html-страницы (стили, картинки и т.д.)
  • — глубина скачивания, 0 — бесконечная вложенность ссылок
  • — не перезаписывать существующие файлы
  • — не подниматься выше начального адреса при рекурсивной загрузке

Часто используемые wget параметры можно вынести в ~/.wgetrc.

curl - консольная утилита для передачи данных используя URL-синтаксис, поддерживаются протоколы DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet и TFTP.

Команда Описание
curl http://proft.me получаем содержания главной страницы
curl -o index.html http://proft.me получаем содержания главной страницы в файл index.html
curl -L http://example.com при получении содержимого страницы следовать по редиректам (если такие есть)
curl -u username:password http://example.com/login/ получение страницы скрытой за Basic HTTP Authentication
curl -x proxy.com:3128 http://proft.me получение страницы используя прокси
curl -I proft.me получаем http-заголовки с сайта
curl -H ‘Host: google.ru’ http://proft.me подменить домен при обращении к серверу (передача своего заголовка)
curl —request POST «http://example.com/form/» —data «field1=value1&field2=value2»
curl -X POST «http://example.com/form/» —data «field1=value1&field2=value2» передача данных POST-запросом
curl -X POST -H «Content-Type: application/json» -d ‘»title»:»Commando»,»year»:»1985″‘ http://example.com/api/movies/ передача данных POST-запросом, данные в виде JSON
curl —request PUT «http://example.com/api/movie/1/» —data «title=DjangoUnchained» передача данных PUT-запросом
curl -F [email protected] -F submit=OK http://example.com/upload/ загрузка файла file.zip в форму (multipart/form-data)
curl -u username:password -O ftp://example.com/file.zip скачать файл с FTP
curl -u username:password -T file.zip ftp://example.com/ закачать файл по FTP
curl —cookie «login=proft» http://example.com/login/ установить кукис
curl —cookie-jar cookies.txt http://example.com сохранение кукисов в файл
curl —cookie cookies.txt http://example.com/login/ использование сохраненных кукисов

Дополнительное чтиво