![]() |
![]() |
![]() |
|||||||||||||||||||||
[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/ Здесь: |
![]() |
|
|||||||||||||||||||||
![]() |
|||||||||||||||||||||||
![]() |
|||||||||||||||||||||||
![]() |
![]() |
![]() |