Wget что это за программа

Как использовать команду Wget с примерами

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

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

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

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

Как проверить, установлен ли wget?

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

Чтобы проверить, откройте окно терминала и введите:

Если у вас установлен wget, вы увидите сообщение, что команде wget не хватает URL-адреса, как показано на изображении ниже:

Wget что это за программа. Смотреть фото Wget что это за программа. Смотреть картинку Wget что это за программа. Картинка про Wget что это за программа. Фото Wget что это за программа

Как установить wget на Ubuntu / Debian?

Чтобы установить wget в системах Ubuntu или Debian, используйте команду:

Как установить wget на CentOS / Fedora?

Чтобы установить wget на CentOS или Fedora, введите следующую команду:

Синтаксис wget

Синтаксис wget имеет следующий шаблон:

Каждая [option] имеет свою длинную и короткую форму, которые удобно заменять. Этот атрибут указывает, что делать со следующим URL-адресом.

[URL] — это адрес файла или каталога, который вы хотите загрузить.

Список основных команд wget

Примеры команд wget

Как скачать файл из Интернета

Чтобы загрузить файл из Интернета, используйте пример:

Как скачать файл и сохранить с другим названием

Как сохранить файл в конкретный каталог

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

Как установить скорость загрузки

Вы можете установить скорость загрузки при скачивании большого файла, чтобы он не использовал всю доступную пропускную способность. Скорость загрузки определяется в килобайтах (k) и мегабайтах (m). Используйте команду:

Как продолжить загрузку после прерывания

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

Как скачать несколько файлов

Как загрузить зеркало веб-страницы

Как скачать через FTP

Чтобы загрузить через FTP, введите имя пользователя и пароль FTP-сервера, а затем ftp-адрес:

Как скачать в фоновом режиме

Вы можете использовать функцию загрузки в фоновом режиме при работе с большими файлами:

Как увеличить число попыток повтора

По умолчанию количество повторных попыток установлено на 20.

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

Как пропустить проверку сертификата

По умолчанию wget проверяет, есть ли у сервера действительный сертификат SSL / TLS. Если он не идентифицирует подлинный сертификат, он отказывается от загрузки.

Как изменить User Agent

При загрузке веб-страницы wget по сути эмулирует браузер. В некоторых случаях в выводе может быть указано, что у вас нет разрешения на доступ к серверу или что соединение запрещено. Это может быть связано с тем, что веб-сайт блокирует клиентские браузеры с определенным «User-Agent».

«User-Agent» — это поле заголовка, которое браузер отправляет на сервер, к которому он хочет получить доступ. Поэтому для загрузки с сервера, который отказывается подключаться, попробуйте его изменить.

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

Источник

Использование команды Wget на простых примерах

Wget что это за программа. Смотреть фото Wget что это за программа. Смотреть картинку Wget что это за программа. Картинка про Wget что это за программа. Фото Wget что это за программа

Утилита wget (или команда wget) предназначена для скачивания файлов, веб страниц и других ресурсов из интернета. Рассмотрим основные возможности команды wget на примерах.

Синтаксис команды wget

Команда wget имеет следующий синтаксис:

В простейшем случае, чтобы скачать файл, достаточно указать URL-адрес:

Указание нового имени файла

Скачивание в фоновом режиме

Скачивание нескольких файлов (по списку)

Скачивание файлов по ссылкам в HTML-документе

Команда wget поддерживает скачивание файлов по ссылкам в HTML-документе. То есть она автоматически находит все ссылки в HTML-файле и скачивает их:

Ограничение скорости скачивания

500k означает 500KB/s.

Продолжение загрузки

Проверка существования файла

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

Также можно проверить доступен ли конкретный файл:

Как скачать сайт

Инструкцию по скачиванию сайтов с помощью wget смотрите в отдельной статье: Скачиваем сайты целиком — утилита wget

Скачивание с FTP (указание логина и пароля)

Скачивание с HTTP с указанием логина и пароля

Указание количества попыток

По умолчанию установлено количество попыток — 20. Но если при попытке загрузки файла получена ошибка 404 (файл не найден) или connection refused, то скачивание прерывается.

Ожидание между загрузкой файлов

Указание нескольких опций

В примерах выше мы использовали опции по отдельности. Можно использовать несколько опций в одной команде одновременно, например:

Заключение

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

Источник

Русский мануал к программе WGet

Wget что это за программа. Смотреть фото Wget что это за программа. Смотреть картинку Wget что это за программа. Картинка про Wget что это за программа. Фото Wget что это за программа

НАЗВАНИЕ

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

СИНТАКСИС

ОПИСАНИЕ

OПЦИИ

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

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

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

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

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

Параметры HTTP

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:

Параметры FTP

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

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

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

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

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

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

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

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

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

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

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

* Но что же будет, если соединение медленное, а файл длинный? Есть возможность обрыва связи перед завершением загрузки. В этом случае Wget будет продолжать попытки нового соединения, пока не кончится число попыток (по умолчанию 20). Можно изменить это число, например до 45:

* Теперь оставим Wget работать в фоновом режиме, а его сообщения будем записывать в журнал log. Долго набирать ––tries, так что используем -t.

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

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

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

* Как и в примере выше, но с конвертированием ссылки в файлах HTML в локальные, для последующего автономного просмотра:

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

Страница HTML будет сохранена в www.server.com/dir/page.html и рисунки, каскадные стили и прочее будет сохранено в папке www.server.com/, кроме случая, когда файлы будут загружаться с других серверов. * Как и в примере выше, но без папки www.server.com/. Также все файлы будут сохранены в подпапках download/.

* Загрузить index.html с www.lycos.com, отображая заголовки сервера:

* Сохранить заголовки в файл для дальнейшего использования.

* Загрузить два высших уровня wuarchive.wustl.edu в /tmp.

* Вы хотите, чтобы загружаемые документы шли в стандартный вывод, а не в файлы?

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

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

* Вы также хотите, чтобы ссылки конвертировались в локальные. Но после прочтения этого руководства, вы знаете, что при этом не будет работать сравнение по времени. Укажите Wget оставлять резервные копии HTML файлов перед конвертацией. Команда:

* А если не работает локальный просмотр файлов HTML с расширением, отличным от .html, например index.cgi, то нужно передать команду на переименование всех таких файлов (content-type = text/html) в имя.html.

С краткими аналогами команд:

ФАЙЛЫ

НАЙДЕННЫЕ ОШИБКИ

1. Убедитесь, что поведение программы действительно ошибочно. Если Wget “вылетает”, то это ошибка. Если поведение Wget не соответствует документации, то это ошибка. Если все работает странно, но вы не уверены, как оно должно работать на самом деле, то это тоже может быть ошибкой. 2. Попытайтесь повторить ситуацию с выдачей ошибки за минимальное количество действий.Не спешите отправлять .wgetrc, попробуйте проделать все действия, приведшие к ошибке с другим файлом настроек (или вообще без него). 3. Запустите Wget с параметром -d и отправьте журнал (или его части). Намного легче отыскивать ошибки при наличии таких журналов. 4. Если Wget выдал ошибку, то попытайтесь запустить его в отладчике, например "gdb `which wget` core" и введите "where" для получения обратной трассировки.

СМ. ТАКЖЕ

АВТОРЫ

ПЕРЕВОД

АВТОРСКИЕ ПРАВА

Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
Это свободное программное обеспечение; условия копирования ищите в исходных текстах. НЕ существует никаких гарантий; программа НЕ предназначена для ПРОДАЖ.

Источник

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

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

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

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

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

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

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

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

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

Скачать содержимое каталога http://example.org/

luzer/my-archive/ и всех его подкаталогов, при этом не поднимаясь по иерархии каталогов выше:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ключи HTTP

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

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

/.netscape/cookies.txt. Mozilla and Netscape 6.x. Файл cookie в Mozilla тоже называется cookies.txt, располагается где-то внутри

/.mozilla в директории вашего профиля. Полный путь обычно выглядит как

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

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

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

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

Источник

Изучаем команду wget на 12 примерах

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

Wget что это за программа. Смотреть фото Wget что это за программа. Смотреть картинку Wget что это за программа. Картинка про Wget что это за программа. Фото Wget что это за программа

1. Загрузка одного файла

Если всё, что нужно — это загрузка одного файла, нам подойдёт следующая конструкция:

После ввода такой команды начнётся скачивание Nagios Core. В ходе этого процесса можно будет видеть данные о загрузке, например — сведения о том, какой объём данных уже загружен, текущую скорость, и то, сколько времени осталось до конца загрузки.

2. Загрузка файла и сохранение его с новым именем

3. Ограничение скорости загрузки файлов

Здесь задано ограничение скорости загрузки, равное 500 Кб/с.

4. Завершение прерванной загрузки

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

5. Фоновая загрузка файла

6. Загрузка нескольких файлов

Выполнение этой команды приведёт к поочерёдной загрузке всех файлов из списка.

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

8. Загрузка файлов с FTP-сервера

Команда загрузки файла с анонимного FTP-сервера с помощью wget выглядит так:

Если для доступа к файлу требуются имя пользователя и пароль, то команда примет такой вид:

9. Создание локальной копии веб-сайта

Обратите внимание на дополнительные параметры командной строки:

10. Загрузка с сайта только файлов определённого типа

11. Пропуск файлов определённого типа

Итоги

Wget — довольно простая в использовании, но весьма полезная утилита Linux. И, на самом деле то, о чём мы рассказали — лишь малая часть того, что она умеет. Надеемся, этот обзор поможет тем, кто не был знаком с wget, оценить эту программу, и, возможно, включить её в свой повседневный арсенал инструментов командной строки.

Уважаемые читатели! Пользуетесь ли вы инструментами командной строки Linux для загрузки файлов? Если да — просим о них рассказать.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *