Wget, няколко примера за това какво може да се направи с този инструмент

За wget

В следващата статия ще разгледаме Wget. Трябва да се каже, че GNU Wget е безплатен инструмент което позволява изтеглянето на съдържание от уеб сървъри по прост и бърз начин. Името му произлиза от World Wide Web (w) и думата get (на английски получавам). Това име означава: вземете от WWW.

Днес има десетки приложения за изтегляне на файлове много ефективно. Повечето от тях са базирани на уеб и настолни интерфейси и са разработени за всички операционни системи. Въпреки това на Gnu / Linux (има и версия за Windows) има мощен мениджър за изтегляне на wget файлове. Счита се за най-мощния изтеглящ, който съществува. Поддържа протоколи като http, https и FTP.

Изтегляне на файлове с wget

Изтеглете файл

Най-простият начин да използвате този инструмент е да изтеглите посочващ файла Какво искаме:

wget http://sitioweb.com/programa.tar.gz

Изтеглете с помощта на различни протоколи

Като добър мениджър за изтегляне е възможно заявете повече от едно изтегляне наведнъж. Можем дори да използваме различни протоколи в същия ред:

wget http://sitioweb.com/programa.tar.gz ftp://otrositio.com/descargas/videos/archivo-video.mpg

Изтегляне чрез разширение

Друг начин за изтегляне на множество файлове, които използват същото разширение, той ще използва звездата със заместващ знак:

wget<code class="language-bash" data-lang="bash">-r -A.pdf</code>http://sitioweb.com/*.pdf

Тази команда не винаги работи, тъй като някои сървъри може да са блокирали достъпа до Wget.

Изтеглете списък с файлове

Ако това, което искаме, е да изтеглим откритите от нас файлове, ще трябва само да запазим техните URL във файл. Ще създадем списък с име files.txt и ние ще посочим името на списъка в командата. Необходимо поставете само един url на ред вътре в files.txt.

Командата, която ще използваме за изтегляне на създадения списък и която запазваме в .txt файлове, ще бъде следната:

wget -i archivos.txt

Рестартирайте изтеглянето

Ако по някаква причина изтеглянето е било прекъснато, ще можем продължете изтеглянето от мястото, където е спряло използвайки опция c с командата wget:

wget -i -c archivos.txt

Добавете дневник за изтеглянето

Ако искаме да получим дневник за изтеглянето, за да го направим контролира всеки инцидент върху него ще трябва да добавим -o опция както е показано в следното:

wget -o reporte.txt http://ejemplo.com/programa.tar.gz

Ограничете пропускателната способност за изтегляне

При много дълги изтегляния можем ограничи пропускателната способност за изтегляне. С това ще предотвратим изтеглянето на цялата честотна лента по време на изтеглянето:

wget -o /reporte.log --limit-rate=50k ftp://ftp.centos.org/download/centos5-dvd.iso

Изтеглете с потребителско име и парола

Ако искаме да изтеглим от сайт, където се изисква потребителско име / парола, ще трябва да използваме само тези опции:

wget --http-user=admin --http-password=12345 http://ejemplo.com/archivo.mp3

Опити за изтегляне

По подразбиране, тази програма прави 20 опита да установи връзката и започнете изтеглянето, в много наситени сайтове е възможно дори с 20 опита да не е постигнато. С опция t се увеличава до повече опити.

wget -t 50 http://ejemplo.com/pelicula.mpg

Изтеглете уебсайт с wget

Wget помощ човек

Wget помощ човек

Wget не се ограничава само до изтегляне на файловеЩе можем да изтеглим цяла страница. Просто ще трябва да напишем нещо като:

wget www.ejemplo.com

Изтеглете уебсайт и неговите допълнителни елементи

С опция стр ние също ще изтеглим всички допълнителни елементи, необходими на страницата като таблици със стилове, вградени изображения и др.

Ако добавим опция r se ще изтегля рекурсивно до 5 нива от сайта:

wget -r www.ejemplo.com -o reporte.log

Преобразувайте връзки в локални

По подразбиране връзките в сайта сочат към адреса на целия домейн. Ако изтеглим сайта рекурсивно и след това го проучим офлайн, можем да използваме опция за конвертиране на връзки които ще ги превърнат в локални връзки:

wget --convert-links -r http://www.sitio.com/

Вземете пълно копие на сайта

Ще имаме възможността да получим пълно копие на сайт. The –Огледален вариант е същото като използването на опции -r -l инф -N което показва рекурсия на безкрайно ниво и получаване на оригиналния клеймо за всеки изтеглен файл.

wget --mirror http://www.sitio.com/

Трансформирайте разширенията

Ако изтеглите целия сайт, за да го гледате офлайн, може да не се отворят няколко изтеглени файла поради разширения като .cgi, .asp или .php. Тогава е възможно да се посочи с –Html-опция за разширение Всички файлове се преобразуват в разширение .html.

wget --mirror --convert-links --html-extension http://www.ejemplo.com

Това са само общи насоки отколкото можете да направите с Wget. Който иска, може да се консултира с онлайн ръководство да се консултираме с всички възможности, които ни предлага този прекрасен мениджър за изтегляне.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   Рубен Карденал каза той

    Що се отнася до „Изтегляне чрез разширение“ спрях да чета. Не можете да изтеглите това, което не знаете. Освен ако исканата директория не позволява списъка с файлове и липсва индекс (и и двата трябва да се появят едновременно), това, което казвате, не може да се направи. Какво ниво.

    1.    Анонимен компютър каза той

      Здравей Рубен, невежеството е малко смело.
      Това, което коментирате, може да се направи с проста команда за google:
      тип файл:pdf сайт:ubunlog.com
      В този пример в този блог няма pdf, но сменете домейна в края на предпочитаната от вас мрежа и ще видите колко лесно е да видите всички файлове от даден тип мрежа.
      Приятен ден.

      1.    Франк каза той

        Но wget не се свързва с google, за да намери pdfs, които са в url. Уеб директорията трябва да е отворена и трябва да има страница с индекс, генерирана от mod_autoindex или подобен, както казва Рубен Карденал.

    2.    Джими Олано каза той

      „Тази команда не винаги работи, тъй като някои сървъри може да са блокирали достъпа до wget.“
      Това изменение, което беше поставено върху тази статия, тъй като не съм съгласен с нея (въпреки че технически е възможно да се блокират определени уеб агенти за HTTP заглавки и да се върне съобщение 403 "не е разрешено") и обяснявам защо:

      Всички уеб сървъри на Apache (и говоря за значителен процент от сървърите) по подразбиране позволяват глобиране (отлична статия в Wikipedia, прочетете: https://es.wikipedia.org/wiki/Glob_(inform%C3%A1tica) .

      Това на практика означава, както е посочено от г-н. Rubén (и той е прав), АКО НЯМА ФАЙЛ, ПРИКЛИКАН "index.php" или "index.html" (или дори просто наречен "index"), сървърът тихо ще върне списък с файлове и директории (разбира се във форма на html страница с информацията като уеб връзка за всеки файл). ПОВЕЧЕТО УЕБ СЪРВЪРИ ДЕАКТИВИРАТ ТАЗИ ФУНКЦИИ ЧРЕЗ .Htacces ФАЙЛА (строго погледнато Apache2) ЗА СИГУРНОСТИ.

      Ето гъвкавостта на wget (вижте неговата история, отново в Уикипедия, тази, която знаете най-много: https://es.wikipedia.org/wiki/GNU_Wget ) да анализираме или „анализираме“ споменатата информация и да извлечем само разширенията, които искаме.

      Сега, в случай че това не работи, поради една или друга причина, можем да опитаме други разширени функции на wget, цитирам директно на английски:

      Искате да изтеглите всички GIF файлове от директория на HTTP сървър. Опитахте 'wget http://www.example.com/dir/*.gif’, но това не проработи, защото извличането на HTTP не поддържа GLOBBING (сложих главни букви). В този случай използвайте:

      wget -r -l1 –не родител -A.gif http://www.example.com/dir/

      По-подробно, но ефектът е същият. '-r -l1' означава да се извлича рекурсивно (вж. Рекурсивно изтегляне), с максимална дълбочина 1. „–но-родител“ означава, че препратките към родителската директория се игнорират (вижте Ограничения, базирани на директория), и „-A. gif 'означава да изтеглите само GIF файловете. '-A «* .gif» също би работил.

      АКО СЕ РАБОТИ ПО ТОЗИ ПОСЛЕДЕН НАЧАЛ wget ще създаде за нас папка с искания уеб адрес в папката по подразбиране, в която работим, и ще направи поддиректории, ако е необходимо и там ще постави, например .gif изображенията, които ние искаме.

      --------
      ОБАЧЕ, ако все още не е възможно да се получат само определени видове файлове (например. * .Jpg), ще трябва да използваме параметъра «–page-requisites», който изтегля всички вътрешни елементи на html страница (изображения, звуци, css и т.н.) заедно със самата html страница („–page-requisites“ може да бъде съкратено „-p“) и това би било еквивалентно на изтегляне на нещо като „mhtml“ https://tools.ietf.org/html/rfc2557

      Надявам се тази информация да ви е полезна.

      1.    Дамян Амедо каза той

        Благодаря за бележките. Salu2.

  2.   Следбанки каза той

    Мисля, че имате грешка, първите два реда имат една и съща команда.

  3.   микрофон каза той

    Благодаря ви много, много добър урок!