| [Wget - насос для Интернета] Примеры использования |
![]() |
||||||||||||||||||||||
Ну вот мы и добрались до самого интересного - применения Wget на практике. Ради чего, собственно, все это и затевалось. Начнем с самого простого. Выгрузка отдельного файлаКак уже упоминалось ранее, Wget является утилитой управляемой командной строкой, поэтому всю необходимую информацию ему необходимо передавать через нее в момент запуска программы. Для упрощения работы, с целью постоянного доступа к командной строке, откройте окно "Сеанс MS-DOS". В данном случае в командной строке необходимо указать URI требуемого для выгрузки файла. Например, для того чтобы выгрузить архив со справочным файлом Wget в формате MS Windows Help, URI которого приведен в ссылках, командная строка будет иметь вид: wget http://www.sunsite.auc.dk/wget/wgethelp.zip Обратите внимание на обязательность указания в URI префикса протокола
выгрузки, в данном случае это --23:53:22-- http://www.sunsite.auc.dk:80/wget/wgethelp.zip
=> `wgethelp.zip'
Connecting to www.sunsite.auc.dk:80... connected!
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://sunsite.auc.dk/wget/wgethelp.zip [following]
--23:53:23-- http://sunsite.auc.dk:80/wget/wgethelp.zip
=> `wgethelp.zip'
Connecting to sunsite.auc.dk:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 80,656 [application/zip]
0K -> .......... .......... .......... .......... .......... [ 63%]
50K -> .......... .......... ........ [100%]
23:53:49 (3.38 KB/s) - `wgethelp.zip' saved [80656/80656]
FINISHED --23:53:49--
Downloaded: 80,656 bytes in 1 files
Здесь в начале идет шапка описывающая процесс соединения с ресурсом из
которой хорошо видно, что при доступе к URI
http://www.sunsite.auc.dk/wget/wgethelp.zip удаленный сервер дал команду
перенаправления для Wget ( Выгрузка нескольких файловДля выполнения этой операции существует два способа:
Второй способ представляет наибольший интерес, поскольку не накладывает совершенно никаких ограничений на количество выгружаемых файлов. Формат файла списка чрезвычайно прост. Это обычный текстовый файл, в котором перечисляются URI для выгружаемых файлов по одному URI на каждую строку. Например, чтобы выгрузить справочные файлы Wget в формате 'GNU info' (это обычный текст со специальной разметкой) со страницы "WGET software for FTP and Web Auto-mirroring" индексный файл должен иметь следующую структуру. http://www.ccp14.ac.uk/mirror/wgetinf0.txt http://www.ccp14.ac.uk/mirror/wgetinf1.txt http://www.ccp14.ac.uk/mirror/wgetinf2.txt http://www.ccp14.ac.uk/mirror/wgetinf3.txt Если файл с таким содержимым сохранить в текущем каталоге под именем
wget -i 4wget Здесь ключ "-i" сообщает Wget, что URI для извлекаемых данных следует
читать из файла После запуска Wget нажатием клавиши Enter, вывод Wget будет иметь следующий вид. --00:49:11-- http://www.ccp14.ac.uk:80/mirror/wgetinf0.txt
=> `wgetinf0.txt'
Connecting to www.ccp14.ac.uk:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 2,588 [text/plain]
0K -> .. [100%]
00:49:13 (15.80 KB/s) - `wgetinf0.txt' saved [2588/2588]
--00:49:13-- http://www.ccp14.ac.uk:80/mirror/wgetinf1.txt
=> `wgetinf1.txt'
Connecting to www.ccp14.ac.uk:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 52,101 [text/plain]
0K -> .......... .......... .......... .......... .......... [ 98%]
50K -> [100%]
00:49:36 (2.37 KB/s) - `wgetinf1.txt' saved [52101/52101]
--00:49:36-- http://www.ccp14.ac.uk:80/mirror/wgetinf2.txt
=> `wgetinf2.txt'
Connecting to www.ccp14.ac.uk:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 39,691 [text/plain]
0K -> .......... .......... .......... ........ [100%]
00:49:46 (4.54 KB/s) - `wgetinf2.txt' saved [39691/39691]
--00:49:46-- http://www.ccp14.ac.uk:80/mirror/wgetinf3.txt
=> `wgetinf3.txt'
Connecting to www.ccp14.ac.uk:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 28,634 [text/plain]
0K -> .......... .......... ....... [100%]
00:49:52 (7.55 KB/s) - `wgetinf3.txt' saved [28634/28634]
FINISHED --00:49:52--
Downloaded: 123,014 bytes in 4 files
Фактически отчет о работе идентичен ранее приведенному, за исключением того, что состоит из четырех операций выгрузки, соответственно количеству выгружаемых файлов. Последние две строки здесь показывают время завершения работы, общий объем полученных данных и количество файлов. Как видно из приведенного примера, Wget предоставляет быстрый и удобный способ для выгрузки большого количества файлов за одну операцию. Однако как быть в случае если нам, скажем, необходимо получить копию WWW страницы или вообще сайта? В данном приложении описанный способ не удобен или вообще не пригоден. Здесь-то мы и подошли к наиболее интересному аспекту применения Wget. ЗеркалированиеЭто наиболее полезная и мощная возможность Wget. Операция зеркалирования позволяет получить на локальном диске копию WWW страницы или сервера. Хотя работа выполняемая Wget в данном случае более сложна, чем в предыдущих примерах, однако запуск самой операции не намного более сложен. Для запуска операции нам понадобится URI корня удаленной страницы или сервера. Рассмотрим это на примере получения копии страницы "Auto-Mirrored Web/FTP Sites", компонентом которой является ранее упомянутая страница "WGET software for FTP and Web Auto-mirroring". Ее URI - http://www.ccp14.ac.uk/mirror/. Однако в HTML документах страницы существует несколько ссылок на архивы которые нас не интересуют, и поэтому желательно их исключить из операции выгрузки. Команда для выполнения этой операции будет следующей. wget -m -np -R "*.tar.*" http://www.ccp14.ac.uk/mirror/ Здесь: |
|
||||||||||||||||||||||