Может ли wget dns запрос. Wget-команды: примеры. Консольная программа для загрузки файлов по сети Wget. Wget для Windows. Установка и использование

wget — руководство GNU Wget

СИНТАКСИС

Wget [параметры ]… [ URL ]…

ОПИСАНИЕ

GNU Wget — это открыто распостраняемая утилита для загрузки файлов из интернет. Она поддерживает протоколы HTTP , HTTPS , и FTP , загрузку с серверов прокси по протоколу HTTP .

Wget может следовать по ссылкам страниц HTML и создавать локальные копии удаленных сайтов web, при этом возможно полное восстановление структуры папок сайта («recursive downloading» — рекурсивная загрузка). Во время такой работы Wget ищет файл с правами доступа для роботов (/robots.txt). Возможна также конвертация ссылок в загруженных файлах HTML для дальнейшего просмотра сайта в автономном режиме («off-line browsing»).
Проверка заголовков файлов: Wget может считывать заголовки файлов (это доступно по протоколам HTTP и FTP) и сравнивать их с заголовкам ранее загруженных файлов, после чего может загрузить новые версии файлов. Благодаря этому при использовании Wget можно реализовывать зеркальное хранение сайтов или набора файлов на FTP.
Wget разработан для медленных или нестабильных соединений: если во время загрузки возникнет проблема, то Wget будет пытаться продолжить загрузку файла. Если сервер, с которого загружается файл, поддерживает докачку файлоа, то Wget продолжит загружать файл именно с того места, где оборвалась загрузка.

OПЦИИ

Основные параметры

-V ––version Отобразить версию Wget. -h ––help Отобразить параметры командной строки Wget. -b ––background Перейти в фоновый режим после запуска. Если файл для сообщений не указан параметром -o , то он записывается в wget-log -e command ––execute command Выполнить command как если бы она была частью .wgetrc . Команда будет выполнена после команд в .wgetrc .

Параметры сообщений

-o logfile ––output-file= logfile Записывать все сообщения в logfile . Иначе они будут направлены в stderr. -a logfile ––append-output= logfile Дополнить logfile . Как и -o , только logfile не заменяется, а дополняется. Если logfile не существует, создается новый файл. -d ––debug Отображать сообщения отладки — разная информация, важная для разработчиков Wget. -q ––quiet Выключить сообщения Wget. -v ––verbose Включить подробные сообщения, со всеми доступными данными. По умолчанию включено. -nv ––non-verbose Исопльзовать сокращенные сообщения (чтобы выключить сообщения, см. -q ). Сообщения об ошибках и основная информация будут отображаться. -i file ––input-file= file Считать URL из file . В этом случае указывать URL в командной строке не требуется. Если URL указаны и в командной строке и в file , то сначала будут загружены URL из командной строки. file не обязательно должен иметь формат HTML (но ничего страшного, если это так) –– URL просто должны быть указаны в нем.Если вы укажете ––force-html , то файл будет прочтен как html . В этом случае могут возникнуть проблемы с относительными ссылками. Это можно предотвратить добавлением в него "" или вводом в командной строке ––base= url . -F ––force-html При чтении URL из файла, включает чтение файла как HTML . Для предотвращения ошибок в случае локального файла HTML добавьте в файл "" или введите параметр командной строки ––base . -B URL ––base= URL При чтении URL из файла (-F ) определяет URL , добавляемый к относительным адресам файла, указанного параметром -i .

Параметры загрузки

––bind-address= ADDRESS При соединениях по протоколам TCP/IP передает "bind()" в ADDRESS на локальной машине. В ADDRESS может быть указано как имя хоста, так и IP адрес. Используется, если ваш компьютер имеет несколько адресов IP. -t number ––tries= number Устанавливает число повторов number . Укажите 0 или inf для отмены повторов. -O file ––output-document= file Документы не будут записываться в соответствующие файлы, а будут объединены вместе и записаны в файл file . Если file существует, то он будет заменен. Если file указан, как , то документы будут выводиться на стандартный вывод (stdout). Этот параметр автоматически устанавливает число повторов в 1. Полезен при закачке разделенных на части файлов с почтовых серверов через интерфейс web. -nc ––no-clobber Если при загрузке сайта связь оборвалась, то укажите этот параметр для продолжения загрузки с места прерывания связи.При запуске Wget без параметров -N , -nc , или -r загрузка одного и того же файла в одну папку приведет к созданию копии файла с именем file .1 . Если существует файл и с таким именем, третья копия будет называться file .2 и т.д. При параметре -nc будут выводиться предупреждения об этом.При запуске Wget с параметром -r , но без -N или -nc , новая загрузка сайта приведет к замене уже загруженных файлов. При указании параметра -nc загрузка продолжится с места обрыва и загруженные файлы не будут загружаться заново (если только они не изменились).При запуске Wget с параметром -N , с или без -r , файл будет загружен только если он новее уже существующего, или если размер его не совпадает с имеющейся копией (см. Сравнение по дате). -nc не комбинируется с -N .
При указанном параметре -nc файлы с расширениями .html или (вот это просто ужасно) .htm с локальных дисков будут загружаться, как будто бы из интернет. -c ––continue Возобновление загрузки файла. Используется, если загрузка файла была прервана. Например: wget -c ftp://sunsite.doc.ic.ac.uk/ls-lR.Z

Если в текущей папке уже есть файл с именем ls-lR.Z , то Wget проверит, соответствует ли данный файл загружаемому (не по размеру!), и если это так, то отправит запрос на сервер на продолжение загрузки файла с того же места, где оборвалась загрузка в прошлый раз.Помните, что при обрыве связи Wget повторяет попытки дозагрузки самостоятельно и без параметра -c , и только когда он «сдастся» и завершит свою работу, то для возобновления загрузки файла будет нужен этот параметр.
Без указания опции -c предыдущий пример приведет к загрузке указанного файла заново с конечным именем ls-lR.Z.1 , никак не трогая уже имеющийся ls-lR.Z .
Начиная с версии 1.7 при указании параметра -c если файл на сервере имеет равный или меньший, чем у локального файла, размер, то Wget не будет ничего загружать и отобразит соответствующее сообщение.
Однако, при использовании -c любой файл на сервере, имеющий больший размер, чем локальный файл, будет рассматриваться, как недокачанный. При этом будет загружено и записано в конец файла только "(длина(удал.файл) - длина(локал.файл))" байт. Это может пригодиться, елси вам нужно загрузить новые сообщения из какого-либо журнала (log).
При этом если загружаемый файл больше потому, что он изменился , то вы получите поврежденный файл (т.е. файл может в итоге получиться совершенно отличным от оригинала). Нужно быть особенно внимательным при использовании -c вместе с -r , так как каждый измененный файл может быть кандидатом на «незавершенную загрузку».
Вы также получите поврежденный файл если ваш сервер прокси HTTP работает глупо и при обрыве соединения пишет в файл сообщение »transfer interrupted». Вероятно, в следующих версиях Wget сам будет исправлять это.
Помните, что -c работает только с серверами FTP и HTTP , поддерживающими заголовки "Range" (т.е. докачку файлов). ––progress= type Индикатор прогресса загрузки и его тип. Возможные значения: «dot» и «bar».По умолчанию используется «bar». Указание опции ––progress=bar приведет к прорисовке красивого индикатора из символов ASCII (как »термометр»). Если стандартный выход не TTY , то будет использован «dot».Укажите ––progress=dot чтобы переключится на тип «dot». Прогресс загрузки будет отмечаться добавлением в полосе точки или знака равно, каждый символ представляет одинаковое количество данных.При использовании этого типа, вы можете указать его стиль — dot: style . Если стиль "default" , то каждый символ будет представлять 1 Kб, 10 символов в кластере и 50 в строке. Стиль "binary" имеет более »компьютерный» вид — 8Kб в символе, 16 символов в кластере и 48 символов в строке (получается строка на 384 Kб). Стиль "mega" используется для загрузки больших файлов — каждый символ представляет 64Kб, 8 символов в кластере и 48 символов в строке (получается 3 Mб на строку).
Вы можете определить стиль по умолчанию, используя команду "progress" в .wgetrc . Если вы хотите, чтобы тип индикатора «bar» использовался всегда (а не только при выводе в stdout), то укажите ––progress=bar:force . -N ––timestamping Включить сравнение по дате. -S ––server-response Отображать заголовки, отправляемые серверам HTTP и запросы, отправляемые серверам FTP . ––spider Установка поведения Wget как «паука», т. е. Wget не будет загружать файлы, а только будет проверять их наличие. Так можно проверять закладки и ссылки сайта. Например:

Wget ––spider ––force-html -i bookmarks.html

Wget не содержит все возможности «настоящих пауков» для WWW . -T seconds ––timeout= seconds Время ожидания в секундах. По умолчанию время ожидания равно 900 с (15 мин). Установка значения в 0 отменяет проверку времени ожидания.Пожалуйста, не снижайте значение времени ожидания, если Вы точно не знаете, что именно делаете. -w seconds ––wait= seconds Пауза в секундах между несколькими загрузками (в т.ч. повторами). Это снижает загруженность сервера. Чтобы указать значение в минутах, используйте "m" , в часах — "h" , в днях — "d" после числа.Указание большого значения этого параметра полезно, если сеть нестабильна (например при обрывах модемной связи). ––waitretry= seconds Устанавливает паузу только между повторами оборвавшихся загрузок. Wget будет ждать 1 секунду после первого обрыва, 2 секунды после второго обрыва загрузки того же файла, и т.д. — до максимума, который указывается в секундах. Например, при значении данного параметра, равного 10, Wget будет ждать в общем (1 + 2 + … + 10) = 55 секунд для каждого файла.Это значение указывается по умолчанию в файле wgetrc . ––random-wait Некоторые серверы, совершая формирование файлов журналов с паузами запросов файлов, могут определить рекурсивную загрузку файлов — сканирование роботами, такими, как Wget. Этот параметр устанавливает время между запросами, варьируя паузы со временем, рассчитываемым от 0 до 2*wait (секунд), где wait указано параметром -w для маскировки Wget.Нельзя забывать, что исходный код Wget доступен, и пэтому даже эту маскировку при желании можно вычислить. -Y on/off ––proxy=on/off Поддержка сервера прокси. Включена по умолчанию, если прокси определен. -Q quota ––quota= quota Квота на размер загружаемых файлов. Указывается в байтах (по умолчанию), в килобайтах Кб (если в конце k ) или в мегабайтах Мб (если в конце m ).При исчерпании квоты текущий файл загружается до конца, то есть квота не работает при загрузке одного файла. Например, если вы исполниет wget -Q10k ftp://wuarchive.wustl.edu/ls-lR.gz , то файл ls-lR.gz будет полностью загружен. Также все указанные в командной строке файлы будут обязательно загружены, в отличие от списка файлов в одном файле или как при рекурсивной загрузке.Указание 0 или inf отменит квоту.

Параметры загрузки папок

-nd ––no-directories Не создавать структуру папок при рекурсивной загрузке. При указанном параметре, все файлы будут загружаться в одну папку. Если файл с данным именем уже существует, то он будет сохранен под именем ИмяФайла.n . -x ––force-directories Противоположно параметру -nd — создавать структуру папок, начиная с главной страницы сервера. Например, wget -x http://fly.srk.fer.hr/robots.txt приведет к загрузке файла в папкуfly.srk.fer.hr . -nH ––no-host-directories Не создавать пустые папки в начале структуры. По умолчанию /pub/xemacs/ . Если вы загрузите ее с параметром -r , то она сохранится под именемftp.xemacs.org /pub/xemacs/ . С параметром -nH из имени начальной папки вырежется ftp.xemacs.org / , и она будет называться pub/xemacs . А параметр ––cut-dirs уберетnumber компонентов. Примеры работы параметра ––cut-dirs : Без параметров -> ftp.xemacs.org /pub/xemacs/ -nH -> pub/xemacs/ -nH ––cut-dirs=1 -> xemacs/ -nH ––cut-dirs=2 -> . ––cut-dirs=1 -> ftp.xemacs.org /xemacs/ ...

Если вы хотите просто избавиться от структуры папок, то вы можете заменить этот параметр на -nd и -P . В отличие от -nd , -nd работает с подкаталогами — например, при -nH ––cut-dirs=1 подкаталог beta/ запишется, как xemacs/beta . -P prefix ––directory-prefix= prefix Определяет начальную папку , в которой будет сохранена структура папок сайта (или просто файлы). По умолчанию этот параметр равен . (текущая папка).

Параметры HTTP

-E ––html-extension Если тип загруженного файла text/html и его адрес не оканчивается на .? , при использовании данного параметра к его имени будет добавлено .html . Это может быть полезно при зеркальном хранении страниц .asp , если вы не хотите, чтобы они вмешивались в работу вашего сервера Apache. Другой случай применения этого парамера — это загрузка страниц-ответов CGI скриптов. Страница с URL вида http://site.com/article.cgi?25 будет сохранена, как article.cgi?25.html .Примечание: при обновлении или другой перезагрузке страниц с данным параметром последние будут загружаться заново в любом случае, т.к. Wget не может узнать, имеет ли отношение локальный файл X.html к загружаемому с URL X . Чтобы избежать лишней перезагрузки, используйте опции -k и -K . При этом оригинальные версии файлов будут также сохранены как X.orig . ––http-user= user ––http-passwd= password Имя пользователя user и пароль password для сервера HTTP . В зависимости от типа отклика, Wget будет использовать "basic" (небезопасную) или "digest" (защищенную) авторизацию.Можно также указывать имя пользователя и пароль и в самом URL . -C on/off ––cache=on/off Включает или выключает кеширование со стороны сервера. При этом Wget посылает соответствующих запрос (Pragma: no-cache ). Также используется для быстрого обновления файлов на прокси-сервере.По умолчанию кеширование разрешено. ––cookies=on/off Включает или выключает использование cookie. Сервер отправляет клиенту cookie, используя заголовок "Set-Cookie" и клиент отвечает таким же cookie. Благодаря этому сервер может вести статистику посетителей. По умолчанию cookie используются, но запись их на диск выключена. ––load-cookies file Загружать cookie из file перед первой загрузкой HTTP . file имеет текстовый формат, как cookies.txt у Netscape.Этот параметр используется при зеркалировании. Для этого Wget отправляет те же cookies, которые отправляет ваш браузер при соединении с сервером HTTP . Это включается данным параметром — просто укажите Wget путь к cookies.txt . Разные браузеры хранят cookie в разных папках: Netscape 4.x. Файл находится в ~/.netscape/cookies.txt . Mozilla и Netscape 6.x. Mozilla хранит cookies в cookies.txt , расположенном где-то в ~/.mozilla , в папке вашего профиля. Полный путь обычно заканчивается чем-то вроде~/.mozilla/default/some-weird-string/cookies.txt . Internet Explorer. Чтобы экспортировать cookie для Wget, выберите «Файл», «Импорт и Экспорт», в мастере выберите «Экспорт файлов cookie». Проверено в Internet Explorer 5; возможно не будет работать в ранних версиях. Другие обозреватели. Параметр ––load-cookies будет работать с cookie в формате Netscape, который поддерживается Wget. Если вы не можете использовать параметр ––load-cookies , то все равно есть выход. Если ваш обозреватель поддерживает Запишите имя и значение cookie и вручную укажите Wget отправку этих cookie: wget ––cookies=off ––header "Cookie: I=I" ––save-cookies file Сохранить cookie из file в конце сессии. Устаревшие cookie не сохраняются. ––ignore-length Некоторые серверы HTTP (точнее, скрипты CGI ) отправляют заголовки "Content-Length" , которые указывают Wget, что загружено еще не все. И Wget загружает один документ несколько раз.С этим параметром, Wget будет игнорировать заголовки "Content-Length" . ––header= additional-header Определяет additional-header , отправляемый серверу HTTP . Он должен содержать : и символы после него.Вы можете определить несколько дополнительных заголовков через использование ––header несколько раз. wget ––header="Accept-Charset: iso-8859-2" ––header="Accept-Language: hr" http://fly.srk.fer.hr/

Указание пустой строки в значении заголовка очистит все определенные пользователем до этого заголовки. ––proxy-user= user ––proxy-passwd= password Определяет имя пользователя user и пароль password для авторизации сервере прокси. Будет использован тип авторизации "basic" . ––referer= url Добавляет заголовок `Referer: url ‘ в запрос HTTP . Используется при загрузке страниц, которые передаются правильно только если сервер знает, с какой страницы вы пришли. -s ––save-headers Сохранять заголовки, отправляемые серверам HTTP . -U agent-string ––user-agent= agent-string Идентифицироваться, как agent-string при запросе на HTTP сервер.Протокол HTTP позволяет определять себя использованием заголовка агента. Wget по умолчанию идентифицируется, как Wget/ version , где version — это версия Wget.Некоторые серверы выдают требуемую информацию только для обозревателей, идентифицирующихся как "Mozilla" или Microsoft "Internet Explorer" . Этот параметр позволяет обмануть такие серверы.

Параметры FTP

-nr ––dont-remove-listing Не удалять временные файлы .listing , генерируемые при загрузке по FTP . Эти файлы содержат информацию о папках серверов FTP . Неудаление поможет вам быстро определить обновление папок сервера (т.е. определять., что ваше зеркало является таковым).Если вы не удаляете .listing , то помните о своей безопасности! Например, с таким именем можно создать символическую ссылку на /etc/passwd или что-то еще. -g on/off ––glob=on/off Включает или выключает использование специальных символов (маски ) по протоколу FTP . Это может быть * , ? , [ и ] . Например: wget ftp://gnjilux.srk.fer.hr/*.msg

По умолчанию использование символов маски разрешено, если URL содержит такие символы.Вы можете также взять URL в кавычки. Это сработает только на серверах Unix FTP (и эмулирующих выход Unix "ls"). ––passive-ftp Включает пассивный режим FTP , когда соединение инициируется клиентом. Используется при наличии firewall. ––retr-symlinks При рекурсивной загрузке папок FTP файлы, на которые указывают символические ссылки, не загружаются. Данный параметр отключает это.Параметр ––retr-symlinks работает сейчас только для файлов, не для папок.Помните, что этот параметр не работает при загрузке одиночного файла.

Параметры рекурсивной загрузки

-r ––recursive Включить рекурсивную загрузку. -l depth ––level= depth Максимальная глубина рекурсивной загрузки depth . По умолчанию ее значение равно 5. ––delete-after Удалять каждую страницу (локально) после ее загрузки. Используется для сохранения новых версий часто запрашиваемых страниц на прокси. Например: wget -r -nd ––delete-after http://whatever.com/~popular/page/

Параметр -r включает загрузку по умолчанию, параметр -nd отключает создание папок.При указанном параметре ––delete-after будет игнорироваться параметр ––convert-links . -k ––convert-links После завершения загрузки конвертировать ссылки в документе для просмотра в автономном режиме. Это касается не только видимых ссылок на другие документы, а ссылок на все внешние локальные файлы.Каждая ссылка изменяется одним из двух способов:

* Ссылки на файлы, загруженные Wget изменяются на соответствующие относительные ссылки.Например: если загруженный файл /foo/doc.html , то ссылка на также загруженный файл /bar/img.gif будет выглядеть, как ../bar/img.gif . Этот способ работает, если есть видимое соотношение между папками одного и другого файла. * Ссылки на файлы, не загруженные Wget будут изменены на абсолютные адреса этих файлов на удаленном сервере.Например: если загруженный файл /foo/doc.html содержит ссылку на /bar/img.gif (или на ../bar/img.gif ), то ссылка в файле doc.html изменится наhttp://host/bar/img.gif . Благодаря этому, возможен автономный просмотр сайта и файлов: если загружен файл, на который есть ссылка, то ссылка будет указывать на него, если нет — то ссылка будет указывать на его адрес в интернет (если такой существует). При конвертировании используются относительные ссылки, значит вы сможете переносить загруженный сайт в другую папку, не меняя его структуру.Только после завершения загрузки Wget знает, какие файлы были загружены. Следовательно, при параметре -k конвертация произойдет только по завершении загрузки. -K ––backup-converted Конвертировать ссылки обратно — убирать расширение .orig . Изменяет поведение опции -N . -m ––mirror Включить параметры для зеркального хранения сайтов. Этот параметр равен нескольким параметрам: -r -N -l inf -nr . Для неприхотливого хранения зеркальных копий сайтов вы можете использовать данный параметр. -p ––page-requisites Загружать все файлы, которые нужны для отображения страниц HTML . Например: рисунки, звук, каскадные стили.По умолчанию такие файлы не загружаются. Параметры -r и -l , указанные вместе могут помочь, но т.к. Wget не различает внешние и внутренние документы, то нет гарантии, что загрузится все требуемое.Например, 1.html содержит тег "" , со ссылкой на 1.gif , и тег "" , ссылающийся на внешний документ 2.html . Страница 2.html аналогична, но ее рисунок — 2.gif и ссылается она на 3.html . Скажем, это продолжается до определенного числа.Если будет дана команда: wget -r -l 2 http://I /1.html

то 1.html , 1.gif , 2.html , 2.gif и 3.html загрузятся. Как видим, 3.html без 3.gif , т.к. Wget просто считает число прыжков, по которым он перешел, доходит до 2 и останавливается. А при параметрах:

Wget -r -l 2 -p http://I /1.html

Все файлы и рисунок 3.gif страницы 3.html загрузятся. Аналогично

Wget -r -l 1 -p http://I /1.html

приведет к загрузке 1.html , 1.gif , 2.html и 2.gif . Чтобы загрузить одну указанную страницу HTML со всеми ее элементами, просто не указывайте -r и -l :

Wget -p http://I /1.html

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

Wget -E -H -k -K -p http://I /I

И в завершении, нужно сказать, что для Wget внешняя ссылка — это URL , указанный в тегах "" , "" и "" , кроме "" .

Параметры запрета/разрешения рекурсивной загрузки

-A acclist ––accept acclist -R rejlist ––reject rejlist Список имен файлов, разделенных запятыми, которые следует или не следует загружать. Разрешается задание имен файлов по маске. -D domain-list ––domains= domain-list Список доменов domain-list , с которых разрешено загружать файлы. Разделяется запятыми. Этот параметр не включает -H . ––exclude-domains domain-list Список доменов, с которых не разрешено загружать файлы ––follow-ftp Следовать по ссылкам FTP с HTML страниц. Иначе, ссылки на файлы по протоколу FTP игнорируются. ––follow-tags= list Wget имеет встроенную таблицу тегов HTML , в которых он ищет ссылки на другие файлы. Вы можете указать дополнительные теги в разделенном запятыми списке list в этом параметре. -G list ––ignore-tags= list Обратно ––follow-tags . Для пропуска тегов HTML при рекурсивной загрузке, укажите их в разделенном запятыми списке list .Раньше параметр -G был лучшим для загрузки отдельных страниц с их вспомогательными файлами. Вы можете посмотреть, как это было, указав команду wget -Ga,area -H -k -K -r http://I /I

Но теперь лучшим параметром для загрузки одной страницы полностью считается ––page-requisites . -H ––span-hosts Разрешает посещать любые сервера, на которые есть ссылка. -L ––relative Следовать только по относительным ссылкам. При этом параметре файлы с других серверов точно не будут загружаться. -I list ––include-directories= list Список папок, разделенных запятыми, из которых разрешено загружать файлы. Элементы списка list -X list ––exclude-directories= list Список папок, разделенных запятыми, исключаемых для загрузки (см. Ограничение по папкам). Элементы списка list могут содержать символы масок. -np ––no-parent Не подниматься выше начального адреса при рекурсивной загрузке.

ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ

Примеры разделены на три категории согласно их сложности.

Просто использование

* Если вам нужно загрузить URL , то введите: wget http://fly.srk.fer.hr/ * Но что же будет, если соединение медленное, а файл длинный? Есть возможность обрыва связи перед завершением загрузки. В этом случае Wget будет продолжать попытки нового соединения, пока не кончится число попыток (по умолчанию 20). Можно изменить это число, например до 45: wget ––tries=45 http://fly.srk.fer.hr/jpg/flyweb.jpg * Теперь оставим Wget работать в фоновом режиме, а его сообщения будем записывать в журнал log . Долго набирать ––tries , так что используем -t . wget -t 45 -o log http://fly.srk.fer.hr/jpg/flyweb.jpg &

Символ амперсанда в конце указывает командному интерпретатору продолжать работу, не дожидаясь завершения работы Wget. Чтобы программа делала повторы бесконечно — используйте -t inf . * Использовать FTP также очень просто. Wget берет на себя все заботы по авторизации.

Wget ftp://gnjilux.srk.fer.hr/welcome.msg * Если вы укажите адрес папки, то Wget загрузит листинг этой папки (т.е. файлы и подкаталоги, содержащиеся в ней) и сконвертирует его в формат HTML . Например: wget ftp://prep.ai.mit.edu/pub/gnu/ links index.html

Расширенное использование

* Если у Вас есть файл с URL, которые вы хотите загрузить, то используйте параметр -i : wget -i I

Если вы укажете вместо имени файла, то URL будут читаться из стандартного ввода (stdin). * Создать пятиуровневую копию сайта GNU со структурой папок оригинала, с одной попыткой загрузки, сохранить сообщения в gnulog :

Wget -r http://www.gnu.org/ -o gnulog * Как и в примере выше, но с конвертированием ссылки в файлах HTML в локальные, для последующего автономного просмотра: wget ––convert-links -r http://www.gnu.org/ -o gnulog * Загрузить одну страницу HTML и все файлы, требуемые для отображения последней (напр. рисунки, файлы каскадных стилей и т. д.). Также сконвертировать все ссылки на эти файлы: wget -p ––convert-links http://www.server.com/dir/page.html

Страница HTML будет сохранена в www.server.com /dir/page.html и рисунки, каскадные стили и прочее будет сохранено в папке

-r -l1 включает рекурсивную загрузку с максимальной глубиной 1. ––no-parent выключает следование по ссылкам в родительскую папку, имеющую верхний уровень, -A.gif разрешает загружать только файлы с расширением .GIF . -A «*.gif» также будет работать. * Предположим, что во время рекурсивной загрузки вам нужно было срочно выключить/перезагрузить компьютер. Чтобы не загружать уже имеющиеся файлы, используйте:

Wget -nc -r http://www.gnu.org/ * Если вы хотите указать имя пользователя и пароль для сервера HTTP или FTP , используйте соответствующий синтаксис URL : wget ftp://hniksic: /.emacs * Вы хотите, чтобы загружаемые документы шли в стандартный вывод, а не в файлы? wget -O - http://jagor.srce.hr/ http://www.srce.hr/

Если вы хотите устроить конвейер и загрузить все сайты, ссылки на которые указаны на одной странице:

Wget -O - http://cool.list.com/ | wget ––force-html -i -

Профессиональное использование

* Для хранение зеркала страницы (или папки FTP ), то используйте ––mirror (-m ), что заменяет -r -l inf -N . Вы можете добавить Wget в crontab с запросом на проверку обновлений каждое воскресенье: crontab 0 0 * * 0 wget ––mirror http://www.gnu.org/ -o /home/me/weeklog * Вы также хотите, чтобы ссылки конвертировались в локальные. Но после прочтения этого руководства, вы знаете, что при этом не будет работать сравнение по времени. Укажите Wget оставлять резервные копии HTML файлов перед конвертацией. Команда: wget ––mirror ––convert-links ––backup-converted http://www.gnu.org/ -o /home/me/weeklog * А если не работает локальный просмотр файлов HTML с расширением, отличным от .html , например index.cgi , то нужно передать команду на переименование всех таких файлов (content-type = text/html ) в имя.html . wget ––mirror ––convert-links ––backup-converted ––html-extension -o /home/me/weeklog .wgetrc Это свободное программное обеспечение; условия копирования ищите в исходных текстах. НЕ существует никаких гарантий; программа НЕ предназначена для ПРОДАЖ.

Этот учебник призван объяснить достаточное число команд для того, чтобы вы могли с лёгкостью использовать Vim в качестве редактора общего назначения. Вам потребуется приблизительно 25-30 минут на освоение данного учебника в зависимости от того, сколько времени вы потратите на эксперименты.

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

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/ использование сохраненных кукисов

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

wget - текстовая программа для скачивания файлов.

Если возможностей wget не хватает, то можно использовать curl .

Примеры

Просто скачать файл 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.txt

Wget --input-file=pupkinlist.txt

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

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

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

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

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

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

M эквивалентно -r -N -l inf -nr , эти опции описаны ниже.

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

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

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

Опции

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

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

R , –recursive - включить рекурсивный просмотр каталогов и подкаталогов на удалённом сервере.

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

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

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

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

–http-user= , –http-passwd=Указать имя пользователя и пароль на HTTP -сервере.

H , –span-hosts - разрешает посещать любые сервера, на которые есть ссылка.

P , –page-requisites - загружать все файлы, которые нужны для отображения страниц HTML . Например: рисунки, звук, каскадные стили (CSS). По умолчанию такие файлы не загружаются. Параметры -r и -l , указанные вместе могут помочь, но т.к. wget не различает внешние и внутренние документы, то нет гарантии, что загрузится все требуемое.

У Вас в браузере заблокирован JavaScript. Разрешите JavaScript для работы сайта!

WGet - программа для загрузки файлов и
скачивания сайта целиком.

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

Чтобы получить подсказку по параметрам WGet наберите команду man wget в Linux или wget.exe --help в Windows.

Допустим, мы хотим создать полную копию сайта www.site.com на своем диске. Для этого открываем командную строку (Wget - утилита консольная) и пишем такую команду:

Wget.exe -r -l10 -k -p -E -nc http://www.site.com WGET рекурсивно (параметр -r) обойдет каталоги и подкаталоги на удалённом сервере включая css-стили(-k) с максимальной глубиной рекурсии равной десяти (-l), а затем заменить в загруженных HTML-документах абсолютные ссылки на относительные (-k) и расширения на html(-E) для последующего локального просмотра скачанного сайта. При повторном скачивании не будут лица и перезаписываться повторы(-nc). К сожалению внутренние стили и картинки указанные в стилях не скачиваются

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

Wget.exe -r -l10 -k http://www.site.com -np

Wget.exe -r -l10 -k http://www.site.com -c

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

Wget.exe -r -l10 -k http://www.site.com -P c:\internet\files

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

Wget -m -k -nv -np -p --user-agent="Mozilla/5.0 (compatible; Konqueror/3.0.0/10; Linux)" АДРЕС_САЙТА

Wget -i FILE

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

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

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

Wget ftp://login:[email protected]/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 -l0 -k http://example.org/

Например, не загружать zip-архивы:

Wget -r -R «*.zip» http://freeware.ru

Залогиниться и скачать файлик ключа

@echo off wget --save-cookies cookies.txt --post-data "login=ТВОЙЛОГИН&password=ТВОЙПАРОЛЬ" http://beta.drweb.com/files/ -O- wget --load-cookies cookies.txt "http://beta.drweb.com/files/?p=win%%2Fdrweb32-betatesting.key&t=f" -O drweb32-betatesting.key

Внимание! Регистр параметров WGet различен!

Базовые ключи запуска

-V
--version
Отображает версию Wget.

-h
--help
Выводит помощь с описанием всех ключей командной строки Wget.

-b
--background
Переход в фоновый режим сразу после запуска. Если выходной файл не задан -o, выход перенаправляется в wget-log.

-e command
--execute command
Выполнить command, как если бы она была частью файла . Команда, запущенная таким образом, будет выполнена после команд в.wgetrc, получая приоритет над ними. Для задания более чем одной команды wgetrc используйте несколько ключей -e.

Протоколирование и ключи входного файла

-o logfile
--output-file=logfile
Протоколировать все сообщения в logfile. Обычно сообщения выводятся в standard error.

-a logfile
--append-output=logfile
Дописывать в logfile. То же, что -o, только logfile не перезаписывается, а дописывается. Если logfile не существует, будет создан новый файл.

-d
--debug
Включает вывод отладочной информации, т.е. различной информации, полезной для разработчиков Wget при некорректной работе. Системный администратор мог выбрать сборку Wget без поддержки отладки, в этом случае -d работать не будет. Помните, что сборка с поддержкой отладки всегда безопасна - Wget не будет выводить отладочной информации, пока она явно не затребована через -d.

-q
--quiet
Выключает вывод Wget.

-v
--verbose
Включает подробный вывод со всей возможной информацией. Задано по умолчанию.

-nv
--non-verbose
Неподробный вывод - отключает подробности, но не замолкает совсем (используйте -q для этого), отображаются сообщения об ошибках и основная информация.

-i file
--input-file=file
Читать URL из входного файла file, в этом случае URL не обязательно указывать в командной строке. Если адреса URL указаны в командной строке и во входном файле, первыми будут запрошены адреса из командной строки. Файл не должен (но может) быть документом HTML - достаточно последовательного списка адресов URL. Однако, при указании --force-html входной файл будет считаться html. В этом случае могут возникнуть проблемы с относительными ссылками, которые можно решить указанием внутри входного файла или --base=url в командной строке.

-F
--force-html
При чтении списка адресов из файла устанавливает формат файла как HTML. Это позволяет организовать закачку по относительным ссылкам в локальном HTML-файле при указании внутри входного файла или --base=url в командной строке.

-B URL
--base=URL
Используется совместно c -F для добавления URL к началу относительных ссылок во входном файле, заданном через -i.

Ключи скачивания

--bind-address=ADDRESS
При открытии клиентских TCP/IP соединений bind() на ADDRESS локальной машины. ADDRESS может указываться в виде имени хоста или IP-адреса. Этот ключ может быть полезен, если машине выделено несколько адресов IP.

-t number
--tries=number
Устанавливает количество попыток в number. Задание 0 или inf соответствует бесконечному числу попыток. По умолчанию равно 20, за исключением критических ошибок типа "в соединении отказано" или "файл не найден" (404), при которых попытки не возобновляются.

-O file
--output-document=file
Документы сохраняются не в соответствующие файлы, а конкатенируются в файл с именем file. Если file уже существует, то он будет перезаписан. Если в качестве file задано -, документы будут выведены в стандартный вывод (отменяя -k). Помните, что комбинация с -k нормально определена только для скачивания одного документа.

-nc
--no-clobber
Если файл скачивается более одного раза в один и тот же каталог, то поведение Wget определяется несколькими ключами, включая -nc. В некоторых случаях локальный файл будет затёрт или перезаписан при повторном скачивании, в других - сохранён.
При запуске Wget без -N, -nc или -r скачивание того же файла в тот же каталог приводит к тому, что исходная копия файла сохраняется, а новая копия записывается с именем file.1. Если файл скачивается вновь, то третья копия будет названа file.2 и т.д. Если указан ключ -nc, такое поведение подавляется, Wget откажется скачивать новые копии файла. Таким образом, "no-clobber" неверное употребление термина в данном режиме - предотвращается не затирание файлов (цифровые суффиксы уже предотвращали затирание), а создание множественных копий.
При запуске Wget с ключом -r, но без -N или -nc, перезакачка файла приводит к перезаписыванию на место старого. Добавление -nc предотвращает такое поведение, сохраняя исходные версии файлов и игнорируя любые новые версии на сервере.
При запуске Wget с ключом -N, с или без -r, решение о скачивании новой версии файла зависит от локальной и удалённой временных отметок и размера файла. -nc не может быть указан вместе с -N.
При указании -nc файлы с расширениями.html и.htm будут загружаться с локального диска и обрабатываться так, как если бы они были скачаны из сети.

-c
--continue
Продолжение закачки частично скачанного файла. Это полезно при необходимости завершить закачку, начатую другим процессом Wget или другой программой. Например:

Wget -c ftp://сайт/ls-lR.Z

Если в текущем каталоге имеется файл ls-lR.Z, то Wget будет считать его первой частью удалённого файла и запросит сервер о продолжении закачки с отступом от начала, равному длине локального файла.

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

Без -c предыдущий пример сохранит удалённый файл в ls-lR.Z.1, оставив ls-lR.Z без изменения.

Начиная с версии Wget 1.7, при использовании -c с непустым файлом, Wget откажется начинать закачку сначала, если сервер не поддерживает закачку, т.к. это привело бы к потере скачанных данных. Удалите файл, если вы хотите начать закачку заново.

Также начиная с версии Wget 1.7, при использовании -c для файла равной длины файлу на сервере Wget откажется скачивать и выведет поясняющее сообщение. То же происходит, если удалённый файл меньше локального (возможно, он был изменён на сервере с момента предыдущей попытки) - т.к. "продолжение" в данном случае бессмысленно, скачивание не производится.

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

Однако, если файл на сервере был изменён, а не просто дописан, то вы получите испорченный файл. Wget не обладает механизмами проверки, является ли локальный файл начальной частью удалённого файла. Следует быть особенно внимательным при использовании -c совместно с -r, т.к. каждый файл будет считаться недокачанным.

Испорченный файл также можно получить при использовании -c с кривым HTTP прокси, который добавляет строку тима "закачка прервана". В будущих версиях возможно добавление ключа "откат" для исправления таких случаев.

Ключ -c можно использовать только с FTP и HTTP серверами, которые поддерживают заголовок Range.

--progress=type
Выбор типа индикатора хода закачки. Возможные значения: "dot" и "bar".
Индикатор типа "bar" используется по умолчанию. Он отображает ASCII полосу хода загрузки (т.н. "термометр"). Если вывод не в TTY, то по умолчанию используется индикатор типа "dot".
Для переключения в режим "dot" укажите --progress=dot. Ход закачки отслеживается и выводится на экран в виде точек, где каждая точка представляет фиксированный размер скачанных данных.
При точечной закачке можно изменить стиль вывода, указав dot:style. Различные стили определяют различное значение для одной точки. По умолчанию одна точка представляет 1K, 10 точек образуют кластер, 50 точек в строке. Стиль binary является более "компьютер"-ориентированным - 8K на точку, 16 точек на кластер и 48 точек на строку (384K в строке). Стиль mega наиболее подходит для скачивания очень больших файлов - каждой точке соответствует 64K, 8 точек на кластер и 48 точек в строке (строка соответствует 3M).
Стиль по умолчанию можно задать через.wgetrc. Эта установка может быть переопределена в командной строке. Исключением является приоритет "dot" над "bar", если вывод не в TTY. Для непременного использования bar укажите --progress=bar:force.

-N
--timestamping
Включает использование временных отметок.

-S
--server-response
Вывод заголовков HTTP серверов и ответов FTP серверов.

--spider
При запуске с этим ключом Wget ведёт себя как сетевой паук, он не скачивает страницы, а лишь проверяет их наличие. Например, с помощью Wget можно проверить закладки:

Wget --spider --force-html -i bookmarks.html

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

-T seconds
--timeout=seconds
Устанавливает сетевое время ожидания в seconds секунд. Эквивалентно одновременному указанию --dns-timeout, --connect-timeout и --read-timeout.
Когда Wget соединяется или читает с удалённого хоста, он проверяет время ожидания и прерывает операцию при его истечении. Это предотвращает возникновение аномалий, таких как повисшее чтение или бесконечные попытки соединения. Единственное время ожидания, установленное по умолчанию, - это время ожидания чтения в 900 секунд. Установка времени ожидания в 0 отменяет проверки.
Если вы не знаете точно, что вы делаете, лучше не устанавливать никаких значений для ключей времени ожидания.

--dns-timeout=seconds
Устанавливает время ожидания для запросов DNS в seconds секунд. Незавершённые в указанное время запросы DNS будут неуспешны. По умолчанию никакое время ожидания для запросов DNS не устанавливается, кроме значений, определённых системными библиотеками.

--connect-timeout=seconds
Устанавливает время ожидания соединения в seconds секунд. TCP соединения, требующие большего времени на установку, будут отменены. По умолчанию никакое время ожидания соединения не устанавливается, кроме значений, определённых системными библиотеками.

--read-timeout=seconds
Устанавливает время ожидания чтения (и записи) в seconds секунд. Чтение, требующее большего времени, будет неуспешным. Значение по умолчанию равно 900 секунд.

--limit-rate=amount
Устанавливает ограничение скорости скачивания в amount байт в секунду. Значение может быть выражено в байтах, килобайтах с суффиксом k или мегабайтах с суффиксом m. Например, --limit-rate=20k установит ограничение скорости скачивания в 20KB/s. Такое ограничение полезно, если по какой-либо причине вы не хотите, чтобы Wget не утилизировал всю доступную полосу пропускания. Wget реализует ограничение через sleep на необходимое время после сетевого чтения, которое заняло меньше времени, чем указанное в ограничении. В итоге такая стратегия приводит к замедлению скорости TCP передачи приблизительно до указанного ограничения. Однако, для установления баланса требуется определённое время, поэтому не удивляйтесь, если ограничение будет плохо работать для небольших файлов.

-w seconds
--wait=seconds
Ждать указанное количество seconds секунд между закачками. Использование этой функции рекомендуется для снижения нагрузки на сервер уменьшением частоты запросов. Вместо секунд время может быть указано в минутах с суффиксом m, в часах с суффиксом h или днях с суффиксом d.
Указание большого значения полезно, если сеть или хост назначения недоступны, так чтобы Wget ждал достаточное время для исправления неполадок сети до следующей попытки.

--waitretry=seconds
Если вы не хотите, чтобы Wget ждал между различными закачками, а только между попытками для сорванных закачек, можно использовать этот ключ. Wget будет линейно наращивать паузу, ожидая 1 секунду после первого сбоя для данного файла, 2 секунды после второго сбоя и так далее до максимального значения seconds. Таким образом, значение 10 заставит Wget ждать до (1 + 2 + ... + 10) = 55 секунд на файл. Этот ключ включён по умолчанию в глобальном файле wgetrc.

--random-wait
Некоторые веб-сайты могут анализировать логи для идентификации качалок, таких как Wget, изучая статистические похожести в паузах между запросами. Данный ключ устанавливает случайные паузы в диапазоне от 0 до 2 * wait секунд, где значение wait указывается ключом --wait. Это позволяет исключить Wget из такого анализа. В недавней статье на тему разработки популярных пользовательских платформ был представлен код, позволяющий проводить такой анализ на лету. Автор предлагал блокирование подсетей класса C для блокирования программ автоматического скачивания, несмотря на возможную смену адреса, назначенного DHCP. На создание ключа --random-wait подвигла эта больная рекомендация блокировать множество невиновных пользователей по вине одного.

-Y on/off
--proxy=on/off
Включает или выключает поддержку прокси. Если соответствующая переменная окружения установлена, то поддержка прокси включена по умолчанию.

-Q quota
--quota=quota
Устанавливает квоту для автоматических скачиваний. Значение указывается в байтах (по умолчанию), килобайтах (с суффиксом k) или мегабайтах (с суффиксом m). Квота не влияет на скачивание одного файла..gz, файл ls-lR.gz будет скачан целиком. То же происходит при указании нескольких URL в командной строке. Квота имеет значение при рекурсивном скачивании или при указании адресов во входном файле. Т.о. можно спокойно указать wget -Q2m -i sites - закачка будет прервана при достижении квоты. Установка значений 0 или inf отменяет ограничения.

Dns-cache=off
Отключает кеширование запросов DNS. Обычно Wget запоминает адреса, запрошенные в DNS, так что не приходится постоянно запрашивать DNS сервер об одном и том же (обычно небольшом) наборе адресов. Этот кэш существует только в памяти. Новый процесс Wget будет запрашивать DNS снова. Однако, в некоторых случаях кеширование адресов не желательно даже на короткий период запуска такого приложения как Wget. Например, секоторые серверы HTTP имеют динамически выделяемые адреса IP, которые изменяются время от времени. Их записи DNS обновляются при каждом изменении. Если закачка Wget с такого хоста прерывается из-за смены адреса IP, Wget повторяет попытку скачивания, но (из-за кеширования DNS) пытается соединиться по старому адресу. При отключенном кешировании DNS Wget будет производить DNS-запросы при каждом соединении и, таким образом, получать всякий раз правильный динамический адрес. Если вам не понятно приведённое выше описание, данный ключ вам, скорее всего, не понадобится.

--restrict-file-names=mode
Устанавливает, какие наборы символов могут использоваться при создании локального имени файла из адреса удалённого URL. Символы, запрещённые с помощью этого ключа, экранируются, т.е. заменяются на %HH, где HH - шестнадцатиричный код соответствующего символа. По умолчанию Wget экранирует символы, которые не богут быть частью имени файла в вашей операционной системе, а также управляющие символы, как правило непечатные. Этот ключ полезен для смены умолчания, если вы сохраняете файл на неродном разделе или хотите отменить экранирование управляющих символов. Когда mode установлен в "unix", Wget экранирует символ / и управляющие символы в диапазонах 0-31 и 128-159. Это умолчание для Ос типа Unix. Когда mode установлен в "windows", Wget экранирует символы \, |, /, :, ?, ", *, и управляющие символы в диапазонах 0-31 и 128-159. Дополнительно Wget в Windows режиме использует + вместо: для разделения хоста и порта в локальных именах файлов и @ вместо? для отделения запросной части имени файла от остального. Таким образом, адрес URL, сохраняемый в Unix режиме как www..pl?input=blah, в режиме Windows будет сохранён как www..pl@input=blah. Этот режим используется по умолчанию в Windows. Если к mode добавить, nocontrol, например, unix,nocontrol, экранирование управляющих символов отключается. Можно использовать --restrict-file-names=nocontrol для отключения экранирования управляющих символов без влияния на выбор ОС-зависимого режима экранирования служебных символов.

Ключи каталогов

-nd
--no-directories
Не создавать структуру каталогов при рекурсивном скачивании. С этим ключом все файлы сохраняются в текущий каталог без затирания (если имя встречается больше одного раза, имена получат суффикс.n).

-x
--force-directories
Обратное -nd - создаёт структуру каталогов, даже если она не создавалась бы в противном случае..txt сохранит файл в сайт/robots.txt.

-nH
--no-host-directories
Отключает создание хост-каталога..ru/. Данный ключ отменяет такое поведение.

--protocol-directories
Использовать название протокола как компонент каталога для локальный файлов. Например, с этим ключом wget -r http://host сохранит в http/host/... вместо host/....

--cut-dirs=number
Игнорировать number уровней вложенности каталогов. Это полезный ключ для чёткого управления каталогом для сохранения рекурсивно скачанного содержимого.. При скачивании с -r локальная копия будет сохранена в ftp.. Если ключ -nH может убрать ftp.. Здесь на помощь приходит --cut-dirs; он заставляет Wget закрывать глаза на number удалённых подкаталогов. Ниже приведены несколько рабочих примеров --cut-dirs.

No options -> ftp. -nH -> pub/xxx/ -nH --cut-dirs=1 -> xxx/ -nH --cut-dirs=2 -> . --cut-dirs=1 -> ftp.сайт/xxx/

Если вам нужно лишь избавиться от структуры каталогов, то этот ключ может быть заменён комбинацией -nd и -P. Однако, в отличии от -nd, --cut-dirs не теряет подкаталоги - например, с -nH --cut-dirs=1, подкаталог beta/ будет сохранён как xxx/beta, как и ожидается.

-P prefix
--directory-prefix=prefix
Устанавливает корневой каталог в prefix. Корневой каталог - это каталог, куда будут сохранены все файлы и подкаталоги, т.е. вершина скачиваемого дерева. По умолчанию. (текущий каталог).

Ключи HTTP

-E
--html-extension
Данный ключ добавляет к имени локального файла расширение.html, если скачиваемый URL имеет тип application/xhtml+xml или text/html, а его окончание не соответствует регулярному выражению \.?. Это полезно, например, при зеркалировании сайтов, использующих.asp страницы, когда вы хотите, чтобы зеркало работало на обычном сервере Apache. Также полезно при скачивании динамически-генерируемого содержимого. URL типа http://site.com/article.cgi?25 будет сохранён как article.cgi?25.html. Сохраняемые таким образом страницы будут скачиваться и перезаписываться при каждом последующем зеркалировании, т.к. Wget не может сопоставить локальный файл X.html удалённому адресу URL X (он ещё не знает, что URL возвращает ответ типа text/html или application/xhtml+xml). Для предотвращения перезакачивания используйте ключи -k и -K, так чтобы оригинальная версия сохранялась как X.orig.

--http-user=user
--http-passwd=password
Указывает имя пользователя user и пароль password для доступа к HTTP серверу. В зависимости от типа запроса Wget закодирует их, используя обычную (незащищённую) или дайджест схему авторизации. Другой способ указания имени пользователя и пароля - в самом URL. Любой из способов раскрывает ваш пароль каждому, кто запустит ps. Во избежание раскрытия паролей, храните их в файлах.wgetrc или.netrc и убедитесь в недоступности этих файлов для чтения другими пользователями с помощью chmod. Особо важные пароли не рекомендуется хранить даже в этих файлах. Вписывайте пароли в файлы, а затем удаляйте сразу после запуска Wget.

--no-cache
Отключает кеширование на стороне сервера. В этой ситуации Wget посылает удалённому серверу соответствующую директиву (Pragma: no-cache) для получения обновлённой, а не кешированной версии файла. Это особенно полезно для стирания устаревших документов на прокси серверах. Кеширование разрешено по умолчанию.

--no-cookies
Отключает использование cookies. Cookies являются механизмом поддержки состояния сервера. Сервер посылает клиенту cookie с помощью заголовка Set-Cookie, клиент включает эту cookie во все последующие запросы. Т.к. cookies позволяют владельцам серверов отслеживать посетителей и обмениваться этой информацией между сайтами, некоторые считают их нарушением конфиденциальности. По умолчанию cookies используются; однако сохранение cookies по умолчанию не производится.

--load-cookies file
Загрузка cookies из файла file до первого запроса HTTP. file - текстовый файл в формате, изначально использовавшемся для файла cookies.txt Netscape. Обычно эта опция требуется для зеркалирования сайтов, требующих авторизации для части или всего содержания. Авторизация обычно производится с выдачей сервером HTTP cookie после получения и проверки регистрационной информации. В дальнейшем cookie посылается обозревателем при просмотре этой части сайта и обеспечивает идентификацию. Зеркалирование такого сайта требует от Wget подачи таких же cookies, что и обозреватель. Это достигается через --load-cookies - просто укажите Wget расположение вашего cookies.txt, и он отправит идентичные обозревателю cookies. Разные обозреватели хранят файлы cookie в разных местах: Netscape 4.x. ~/.netscape/cookies.txt. Mozilla and Netscape 6.x. Файл cookie в Mozilla тоже называется cookies.txt, располагается где-то внутри ~/.mozilla в директории вашего профиля. Полный путь обычно выглядит как ~/.mozilla/default/some-weird-string/cookies.txt. Internet Explorer. Файл cookie для Wget может быть получен через меню File, Import and Export, Export Cookies. Протестировано на Internet Explorer 5; работа с более ранними версиями не гарантируется. Other browsers. Если вы используете другой обозреватель, --load-cookies будет работать только в том случае, если формат файла будет соответствовать формату Netscape, т.е. то, что ожидает Wget. Если вы не можете использовать --load-cookies, может быть другая альтернатива. Если обозреватель имеет "cookie manager", то вы можете просмотреть cookies, необходимые для зеркалирования. Запишите имя и значение cookie, и вручную укажите их Wget в обход "официальной" поддержки:

Wget --cookies=off --header "Cookie: name=value"

--save-cookies file
Сохранение cookies в file перед выходом. Эта опция не сохраняет истекшие cookies и cookies без определённого времени истечения (так называемые "сессионные cookies"). См. также --keep-session-cookies.

--keep-session-cookies
При указании --save-cookies сохраняет сессионные cookies. Обычно сессионные cookies не сохраняются, т.к подразумевается, что они будут забыты после закрытия обозревателя. Их сохранение полезно для сайтов, требующих авторизации для доступа к страницам. При использовании этой опции разные процессы Wget для сайта будут выглядеть как один обозреватель. Т.к. обычно формат файла cookie file не содержит сессионных cookies, Wget отмечает их временной отметкой истечения 0. --load-cookies воспринимает их как сессионные cookies, но это может вызвать проблемы у других обозревателей Загруженные таким образом cookies интерпретируются как сессионные cookies, то есть для их сохранения с --save-cookies необходимо снова указывать --keep-session-cookies.

--ignore-length
К сожалению, некоторые серверы HTTP (CGI программы, если точнее) посылают некорректный заголовок Content-Length, что сводит Wget с ума, т.к. он думает, что документ был скачан не полностью. Этот синдром можно заметить, если Wget снова и снова пытается скачать один и тот же документ, каждый раз указывая обрыв связи на том же байте. С этим ключом Wget игнорирует заголовок Content-Length, как будто его никогда не было.

--header=additional-header
Укажите дополнительный заголовок additional-header для передачи HTTP серверу. Заголовки должны содержать ":" после одного или более непустых символов и недолжны содержать перевода строки. Вы можете указать несколько дополнительных заголовков, используя ключ --header многократно.

Wget --header="Accept-Charset: iso-8859-2" --header="Accept-Language: hr" http://aaa.hr/

Указание в качестве заголовка пустой строки очищает все ранее указанные пользовательские заголовки.

--proxy-user=user
--proxy-passwd=password
Указывает имя пользователя user и пароль password для авторизации на прокси сервере. Wget кодирует их, использую базовую схему авторизации. Здесь действуют те же соображения безопасности, что и для ключа --http-passwd.

--referer=url
Включает в запрос заголовок `Referer: url". Полезен, если при выдаче документа сервер считает, что общается с интерактивным обозревателем, и проверяет, чтобы поле Referer содержало страницу, указывающую на запрашиваемый документ.

--save-headers
Сохраняет заголовки ответа HTTP в файл непосредственно перед содержанием, в качестве разделителя используется пустая строка.

-U agent-string
--user-agent=agent-string
Идентифицируется как обозреватель agent-string для сервера HTTP. HTTP протокол допускает идентификацию клиентов, используя поле заголовка User-Agent. Это позволяет различать программное обеспечение, обычно для статистики или отслеживания нарушений протокола. Wget обычно идентифицируется как Wget/version, где version - текущая версия Wget. Однако, некоторые сайты проводят политику адаптации вывода для обозревателя на основании поля User-Agent. В принципе это не плохая идея, но некоторые серверы отказывают в доступе клиентам кроме Mozilla и Microsoft Internet Explorer. Этот ключ позволяет изменить значение User-Agent, выдаваемое Wget. Использование этого ключа не рекомендуется, если вы не уверены в том, что вы делаете.

--post-data=string
--post-file=file
Использует метод POST для всех запросов HTTP и отправляет указанные данные в запросе. --post-data отправляет в качестве данных строку string, а --post-file - содержимое файла file. В остальном они работают одинаково. Пожалуйста, имейте в виду, что Wget должен изначально знать длину запроса POST. Аргументом ключа --post-file должен быть обычный файл; указание FIFO в виде /dev/stdin работать не будет. Не совсем понятно, как можно обойти это ограничение в HTTP/1.0. Хотя HTTP/1.1 вводит порционную передачу, для которой не требуется изначальное знание длины, клиент не может её использовать, если не уверен, что общается с HTTP/1.1 сервером. А он не может этого знать, пока не получит ответ, который, в свою очередь, приходит на полноценный запрос. Проблема яйца и курицы. Note: если Wget получает перенаправление в ответ на запрос POST, он не отправит данные POST на URL перенаправления. Часто URL адреса, обрабатывающие POST, выдают перенаправление на обычную страницу (хотя технически это запрещено), которая не хочет принимать POST. Пока не ясно, является ли такое поведение оптимальным; если это не будет работать, то будет изменено. Пример ниже демонстрирует, как авторизоваться на сервере, используя POST, и затем скачать желаемые страницы, доступные только для авторизованных пользователей:

Wget --save-cookies cookies..php wget --load-cookies cookies.txt -p http://server.com/interesting/article.php

Конфигурирование WGET

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

User-agent = "Mozilla/5.0" tries = 5 количество попыток скачать wait = 0 не делать паузы continue = on нужно докачивать dir_prefix = ~/Downloads/ куда складывать скачаное use_proxy=on - использовать прокси http_proxy - характеристики вашего прокси-сервера.

  • Задать переменную окружения WGETRC, указав в ней полный путь к файлу.
  • Задать переменную HOME, в которой указать путь к домашней папке пользователя (c:\Documents and settings\jonh). Тогда wget будет искать файл "wgetrc" в этой папке.
  • Кроме этого можно создать файл wget.ini в той же папке, где находится wget.exe, и задать там дополнительные параметры командной строки wget.

Полезную информацию по WGET можно почерпнуть здесь:

  • PhantomJS - Используйте, если вам нужно скачать сайт, часть данных на котором загружается с помощью JavaScript
.