U sljedećem ćemo članku pogledati Wget. Mora se reći da je GNU Wget besplatni alat koji omogućuje preuzimanje sadržaja s web poslužitelja na jednostavan i brz način. Njegovo ime potječe od World Wide Weba (w) i riječ get (na engleskom dobiti). Ovo ime znači: dobiti od WWW-a.
Danas postoje deseci aplikacija za vrlo učinkovito preuzimanje datoteka. Većina ih se temelji na web i desktop sučeljima i razvijeni su za sve operativne sustave. Međutim na Gnu / Linuxu (postoji i verzija za Windows) postoji moćan upravitelj preuzimanja wget datoteka. Smatra se najmoćnijim programom za preuzimanje koji postoji. Podržava protokole poput http, https i FTP.
Preuzmite datoteke pomoću wgeta
Preuzmite datoteku
Najjednostavniji način korištenja ovog alata je preuzimanje naznačujući spis Što želimo:
wget http://sitioweb.com/programa.tar.gz
Preuzmite pomoću različitih protokola
Kao dobar upravitelj preuzimanja to je moguće zatražite više odjednom preuzimanja. Možemo čak koristiti različite protokole istim redoslijedom:
wget http://sitioweb.com/programa.tar.gz ftp://otrositio.com/descargas/videos/archivo-video.mpg
Preuzmi produženjem
Drugi način za višestruko preuzimanje datoteke koje koriste istu ekstenziju, koristit će se zamjenskom zvjezdicom:
wget<code class="language-bash" data-lang="bash">-r -A.pdf</code>http://sitioweb.com/*.pdf
Ova naredba ne funkcionira uvijek jer su neki poslužitelji možda blokirani wget.
Preuzmite popis datoteka
Ako želimo preuzeti datoteke koje pronađemo, morat ćemo samo spremiti njihove URL u datoteci. Stvorit ćemo popis pod nazivom files.txt a naredbi ćemo naznačiti ime popisa. Potrebno smjestite samo jedan url po retku unutar datoteka.txt.
Naredba koju ćemo koristiti za preuzimanje stvorenog popisa i koju spremamo u .txt datoteke bit će sljedeća:
wget -i archivos.txt
Ponovo pokrenite preuzimanje
Ako je iz bilo kojeg razloga preuzimanje prekinuto, moći ćemo nastavite preuzimanje tamo gdje je stalo koristiti opcija c s naredbom wget:
wget -i -c archivos.txt
Dodajte zapisnik o preuzimanju
Ako želimo dobiti zapis o preuzimanju, kako bismo kontrolirati bilo koji incident na to ćemo morati dodati -o opcija kao što je prikazano u sljedećem:
wget -o reporte.txt http://ejemplo.com/programa.tar.gz
Ograničite propusnost za preuzimanje
U vrlo dugim preuzimanjima možemo ograničiti propusnost za preuzimanje. Ovim ćemo spriječiti da preuzimanje zauzima svu širinu pojasa za vrijeme trajanja preuzimanja:
wget -o /reporte.log --limit-rate=50k ftp://ftp.centos.org/download/centos5-dvd.iso
Preuzmite s korisničkim imenom i lozinkom
Ako želimo preuzeti s web mjesta na kojem je potrebno korisničko ime / lozinka, morat ćemo koristiti samo ove opcije:
wget --http-user=admin --http-password=12345 http://ejemplo.com/archivo.mp3
Pokušaji preuzimanja
Zadano, ovaj program čini 20 pokušaja uspostavljanja veze i započnite s preuzimanjem, na vrlo zasićenim web mjestima moguće je da ni s 20 pokušaja to nije postignuto. Uz opcija t povećava se na više pokušaja.
wget -t 50 http://ejemplo.com/pelicula.mpg
Preuzmite web stranicu s wgetom
Wget nije ograničen samo na preuzimanje datotekaMoći ćemo preuzeti cijelu stranicu. Jednostavno ćemo morati napisati nešto poput:
wget www.ejemplo.com
Preuzmite web mjesto i njegove dodatne elemente
S opcija str također ćemo preuzeti sve potrebni dodatni elementi na stranici kao što su stilski listovi, umetnute slike itd.
Ako tome dodamo opcija r se rekurzivno će preuzeti do 5 razina sa stranice:
wget -r www.ejemplo.com -o reporte.log
Pretvori veze u lokalne
Prema zadanim postavkama veze na web mjestu vode na adresu cijele domene. Ako web mjesto preuzmemo rekurzivno, a zatim ga proučimo izvan mreže, možemo koristiti opcija convert-links to će ih pretvoriti u lokalne veze:
wget --convert-links -r http://www.sitio.com/
Nabavite punu kopiju stranice
Imat ćemo mogućnost dobiti cjelovitu kopiju web mjesta. The –Ogledala opcija je isto kao i korištenje opcije -r -l inf -N što ukazuje na rekurziju na beskonačnoj razini i dobivanje izvorne vremenske oznake svake preuzete datoteke.
wget --mirror http://www.sitio.com/
Pretvorite proširenja
Ako preuzmete cijelu web stranicu da biste je pregledali izvan mreže, nekoliko preuzetih datoteka možda se neće otvoriti zbog proširenja poput .cgi, .asp ili .php. Tada je moguće označiti s –Html-opcija proširenja Sve se datoteke pretvaraju u .html ekstenziju.
wget --mirror --convert-links --html-extension http://www.ejemplo.com
To su samo opće smjernice nego što možete učiniti s Wgetom. Tko želi može se posavjetovati s internetski priručnik da se posavjetujemo sa svim mogućnostima koje nam nudi ovaj prekrasni upravitelj preuzimanja.
Što se tiče "Preuzimanja putem proširenja", prestao sam čitati. Ne možete preuzeti ono što ne znate. Ako traženi direktorij ne dopušta popis datoteka i ako nema indeks (i oboje se moraju pojaviti istovremeno), ono što kažete ne može se učiniti. Kakva razina.
Pozdrav Rubén, neznanje je pomalo smjelo.
Ono što komentirate može se učiniti jednostavnom naredbom za google:
vrsta datoteke:pdf stranica:ubunlog.com
U ovom primjeru na ovom blogu nema pdf-a, ali na kraju promijenite domenu na web koji želite i vidjet ćete kako je lako vidjeti sve datoteke jedne vrste weba.
Ugodan vam dan.
Ali wget se ne povezuje s Googleom kako bi pronašao pdfs koji su u urlu. Web direktorij mora biti otvoren i mora postojati indeksna stranica koju generira mod_autoindex ili slično, kako kaže Rubén Cardenal.
"Ova naredba ne funkcionira uvijek jer su neki poslužitelji možda blokirali pristup wgetu."
Ovaj amandman koji je stavljen na ovaj članak, jer se ne slažem s njim (iako je tehnički moguće blokirati određene web agente za http zaglavne zahtjeve i vratiti poruku 403 "nije dopušteno"), i objasnit ću zašto:
Svi web poslužitelji Apache (a govorim o znatnom postotku poslužitelja) prema zadanim postavkama omogućuju globanje (izvrstan članak na Wikipediji, pročitajte: https://es.wikipedia.org/wiki/Glob_(inform%C3%A1tica) .
To u praksi znači, kako je odredio mr. Rubén (i u pravu je), AKO NE BUDE FILE KOJI SE ZOVE "index.php" ili "index.html" (ili čak jednostavno nazvan "index"), poslužitelj će tiho vratiti popis datoteka i direktorija (naravno u obliku html stranice s podacima kao web poveznicom za svaku datoteku). Većina web poslužitelja onemogućava ovu značajku kroz datoteku .htacces (strogo govoreći Apache2) iz razloga sigurnosti.
Evo svestranosti wgeta (pogledajte njegovu priču, opet na Wikipediji, onu koju najviše znate: https://es.wikipedia.org/wiki/GNU_Wget ) za analizu ili "raščlanjivanje" navedenih informacija i izdvajanje samo proširenja koja tražimo.
Sada, u slučaju da ovo ne uspije, iz jednog ili drugog razloga, možemo isprobati i druge napredne funkcije wgeta, citiram izravno na engleskom:
Želite preuzeti sve GIF-ove iz direktorija na HTTP poslužitelju. Pokušao si 'wget http://www.example.com/dir/*.gif’, ali to nije uspjelo jer HTTP pronalaženje ne podržava GLOBBING (stavljam velika slova). U tom slučaju upotrijebite:
wget -r -l1 –bez roditelja -A.gif http://www.example.com/dir/
Opširnije, ali učinak je isti. '-r -l1' znači rekurzivno dohvaćanje (vidi Rekurzivno preuzimanje), s maksimalnom dubinom od 1. '–ne-roditelj' znači da se reference na nadređeni direktorij zanemaruju (vidi Ograničenja temeljena na direktoriju) i '-A. gif 'znači preuzeti samo GIF datoteke. '-A «* .gif»' bi također radio.
AKO TRČITE OVAJ POSLJEDNJI wget će za nas stvoriti mapu sa traženom web adresom u zadanoj mapi u kojoj radimo i po potrebi će napraviti poddirektorijume i tamo će smjestiti, na primjer, .gif slike koje mi zahtjev.
--------
Ipak, ako još uvijek nije moguće dobiti samo određene vrste datoteka (na primjer, * .jpg), morat ćemo upotrijebiti parametar «–page-requisites» koji preuzima sve interne elemente html stranice (slike, zvukovi, css, itd.), zajedno sa samom html stranicom ("–page-rekviziti" mogu biti skraćeni "-p") i to bi bilo ekvivalentno preuzimanju nečega poput "mhtml" https://tools.ietf.org/html/rfc2557
Nadam se da su vam ove informacije korisne.
Hvala na bilješkama. Salu2.
Mislim da imate pogrešku, prva dva retka imaju istu naredbu.
Puno vam hvala, jako dobar tutorial!