статьиGNU Free Documentation License материалы взяты из Википедии Статья была изменена. Оригинал статьи.

Wget

Материал из Энциклопедии в свободной энциклопедии
Перейти к: навигация, поиск
GNU Wget
Wget-screenshot.png
Тип

менеджер загрузок

Автор

Hrvoje Nikšić[1]

Разработчики

Mauro Tortonesi, Giuseppe Scrivano и др.

Написана на

C[2]

Интерфейс

командная строка

Операционная система

Linux и др. UNIX-подобные, Windows

Языки интерфейса

русский и ещё 38 языков

Первый выпуск

1998[3]

Последняя версия

1.13.4 (17 сентября 2011[3])

Состояние

активное

Лицензия

GNU GPL

Сайт

www.gnu.org/software/wget

Wget[4] в свободная не-интерактивная консольная программа для загрузки файлов по сети. Поддерживает протоколы HTTP, FTP и HTTPS, а также поддерживает работу через HTTP прокси-сервер. Программа включена почти во все дистрибутивы GNU/Linux.

Wget является не-интерактивной программой. Это означает, что после её запуска пользователь может повлиять на её работу только с помощью средств управления процессами самой операционной системы. Как правило для этого используются сочетания клавиш Ctrl+C при необходимости прерывания работы программы и Ctrl+Z для помещения текущего задания в фон. Современные web-браузеры как правило имеют функцию закачки файлов, однако так как браузер рассчитан на интерактивный режим работы, то скачивание большого паллетного количества файлов вручную может быть утомительным. Браузеры, как правило, не предоставляют средств для автоматизации подобных задач. Wget же, например, поддерживает загрузку URL, указанных в файле. Таким образом можно составить список файлов, а в любое удобное время скачать их с помощью wget. Интерфейс командной строки позволяет управлять wget-ом из других программ и скриптов, что используется при автоматизации загрузки файлов (регулярные обновления, мониторинг доступности сервера и т. д.).

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

Файлы можно скачивать рекурсивно по ссылкам в html страницах, как с одного сайта с определённой глубиной следования по ссылкам, так и с нескольких. Помимо этого, при загрузке по ftp файлы можно скачивать «по маске» имени (то есть можно задавать с помощью «*» группу файлов).

Wget поддерживает докачку файла в случае обрыва соединения.

Содержание

[править] Примеры

Загрузка всех URL, указанных в файле FILE:

wget -i FILE

Скачивание файла в указанный каталог (-P)[5]:

wget -P /path/for/save ftp://ftp.example.org/some_file.iso

Использование имени пользователя и пароля на FTP/HTTP (вариант 1):

wget ftp://login:password@ftp.example.org/some_file.iso


Использование имени пользователя и пароля на FTP/HTTP (вариант 2):

wget --user=login --password=password ftp://ftp.example.org/some_file.iso

Скачивание в фоновом режиме (-b):

wget -b ftp://ftp.example.org/some_file.iso

Продолжить (-c continue) загрузку ранее не полностью загруженного файла:

wget -c http://example.org/file.iso

Скачать страницу с глубиной следования 10, записывая протокол в файл log:

wget -r -l 10 http://example.org/ -o log

Скачать содержимое каталога http://example.org/~luzer/my-archive/ и всех его подкаталогов, при этом не поднимаясь по иерархии каталогов выше:

wget -r --no-parent http://example.org/~luzer/my-archive/

Для того, чтобы во всех скачанных страницах ссылки преобразовывались в относительные для локального просмотра, необходимо использовать ключ -k:

wget -r -l 10 -k http://example.org/

Также поддерживается идентификация на сервере:

wget --save-cookies cookies.txt \
--post-data 'user=foo&password=bar' \
http://example.org/auth.php

Скопировать весь сайт целиком:

wget -r -l 10 -k http://example.org/


Вывести содержание ответа в консоль:

wget  http://example.org --quiet -O -

[править] Возвращаемый статус

До версии 1.12, возвращает 0 при успешном выполнении и 1 в случае ошибки. Начиная с версии 1.12[6], в случае ошибки возвращает от 1 до 8, в зависимости от вида.

[править] Критика

Разработка Wget идёт медленно, многие новые расширения протоколов HTTP, FTP, сценарии JavaScript и другие функции не поддерживаются.

В некоторых случаях хорошей альтернативой может являться cURL, а для создания зеркал сайтов (чего cURL не умеет[7]) обычно используется rsync.

[править] Примечания

  1. в‘ Домашняя страница Wget.
  2. в‘ Страница разработки Wget
  3. в‘ 1 2 Репозиторий Wget.
  4. в‘ В силу принятых в *nix-системах соглашений в командной строке эта программа вызывается словом, начинающимся со строчной буквы: wget
  5. в‘ Руководство GNU wget
  6. в‘ wget manual Возвращаемый статус (en)
  7. в‘ cURL FAQ: «Curl is not a web site mirroring program.»

[править] См. также

[править] Ссылки

Источник в «/w/index.php?title=Wget&oldid=43961870»
Пространства имён

Варианты
Просмотры
Действия