Download cijelog websitea

Copy Mac OS X
Da razjasnimo par pojmova odmah na početku. Ovo je onako, iz glave & napamet, ne mora biti apsolutno tačno (vjerovatno i nije stručno korektno), ali podcrtava razlike koje su bitne za ostatak teksta. Web stranica je stranica na webu (ma nemoj…), definirana svojim URLom (iliti adresom) i svodi se na prikaz u web browseru posjetitelja u jednom trenutku. Dakle, ono što upravo čitate je web stranica. Website je skupina, grupa ili kolekcija web stranica koje su semantički (smisleno i logički) povezane i dijele zajednički dio URLa (domenu). Malo je zbunjujuće, ali www.copypaste.ba je i web stranica (jer se /index.php na kraju URLa podrazumijeva, dakle, u smislu početne stranice websitea, tj. homepagea) i website koji se sastoji od grupe stranica, od kojih je jedna i ova koju upravo čitate. Ukratko, www.copypaste.baje website, a www.copypaste.ba/download-cijelog-websitea je web stranica.
Web radi tako što na naš zahtjev za prikaz neke web stranice web server je pripremi, u slučaju da se radi o nekoj od dinamičkih stranica izvrši neki kod i formira HTML dokument koji prosljeđuje nama, klijentima. S naše strane web browser taj HTML dokument interpretira u oblik koji mi onda, kako se to kaže, pretražujemo (browsamo). Drugim riječima, HTML dokument i prateći sadržaj (slike, animacije i sl.) u trenutku prikaza nalaze se na našem kompjuteru, kao kopija nečega što je inače negdje na Internetu. Izuzetak su neki posebni elementi, tipa YouTube video i streamani sadržaji, koji se učitavaju nešto drugačije. Odavno je praksa da se elementi posjećenih stranica keširaju na klijentskim mašinama, tj. da se pravi kopija onoga što je na Internetu. Pri ponovnoj posjeti keširanoj stranici, sadržaj koji je ranije preuzet uspoređuje se s aktualnim, nakon čega se sa Interneta ‘povlači’ samo ono novo i različito. Npr. razni grafički elementi koji čine dizajn stranice rijetko se mijenjaju, tako da njih nije potrebno stalno ‘skidati’ s ‘neta, već je dovoljno ‘povući’ samo novi sadržaj, tekst i pokoju sliku. Ovakav način rada odgovara svima: serveri su pod manjim opterećenjem, pravi se znatno manji promet, a obzirom da se manje toga ‘skida’ pri ponovnoj posjeti i klijentu je surfanje komfornije i brže.
Dakle, da bismo web stranicu mogli vidjeti, njena kopija mora postojati na našim mašinama. Naglašavam da se radi o statičnoj verziji web stranice, i da se ta kopija neće sama ažurirati, ona predstavlja zamrznuto stanje web stranice u trenutku kada je posjećena. Samim tim, trivijalno je tu kopiju izmjestiti, snimiti na lokaciju po želji korisnika, što se tipično obavlja izborom File->Save as u browseru. Ovim je snimanje ili download web stranica pokriveno, međutim, snimanje kompletnog websitea, e to je već drugi par opanaka.
HTTrack Website Copier
Kao što smo već utvrdili, website se (obično) sastoji od više web stranica. Uzmimo za primjer blog: ako je blog website, svaki od njegovih postova predstavlja zasebnu web stranicu. Ti postovi, web stranice, međusobno su povezani (hiper-)linkovima – blog obično nudi više načina kako pripadajućim linkovima doći do pojedinog posta (postovi su po datumu objavljivanja kronološki poredani na naslovnoj stranici i ‘premotavanjem’ moguće je doći do bilo kog posta; postovi su u arhivi sortirani što vremenski, što po kategorijama i tagovima, itd.). Zamislimo taj naš blog-website kao neko stablo, gdje je početna stranica (homepage) korijen zajednički svim postovima-stranicama i odakle se linkovima-granama može doći do svake stranice-posta-lista. Ukoliko želimo napraviti backup, tj. kopiju kompletnog websitea, svih njegovim stranica, u našem slučaju kompletnog bloga sa svim njegovim postovima, morali bismo ići od posta do posta i raditi File->Save as svake stranice. Prilično mukotrpan posao, pogotovo na blogovima sa velikim brojem postova, zar ne? Bilo bi puno lakše i brže kada bi to za nas uradio neki program.
Algoritmi koji se sami probijaju od linka do linka i analiziraju i kopiraju sadržaj stranica nisu ništa novo, ovo je princip rada svakog web pretraživača (tipa Google). HTTrack Website Copier jedan je od programa koji znaju kako. Radi se o freewareu i program možete besplatno (i legalno) preuzeti. Dostupan je u verziji za Windows (32 i 64 bit verzije), ali i za raznorazne unixoide, tipa MacOS, Ubuntu, Debian, Fedora, Mandriva… Tu je i (na žalost, za moj ukus nedovoljno) detaljno uputstvo za korištenje, ali i popis osnovnih mogućnosti softvera.
Stranice HTTrack projekta, po nekim modernim standardima, i nisu nešto, zapravo izgledaju dosta zastarjelo. Ni softver nije ništa bolji na tom planu. No ono najvažnije je da radi, i to jako dobro. Zapravo je prilično napredan i ne pretjerano jednostavan za korištenje, prije nego da prave rezultate potrebno je podosta podešavanja. Ali jednom kad se namjesti, radi čuda. Sada slijedi jedno malo upozorenje. Dobro pazite na postavke, u suprotnom se može desiti da pokušate napraviti backup čitavog Interneta. Kao što možete pretpostaviti, to vam baš i neće poći za rukom.
Da bi otklonili nepoznanice, evo kako sam ja napravio backup svog starog copypaste.blogger.ba bloga, provest ću vas kroz postavke korak po korak:
Nakon onih početnih koraka, tipa davanja imena novom projektu i određivanja direktorija u koji će se pohraniti elementi downloadane stranice (preporučljivo je napraviti novi direktorij, tj. da bude prazan), dolazimo do zanimljivog dijela.
Kao prvo, pod Action odaberite Download web site(s) + questions. Ovo znači da će program downloadati kompletan odabrani website, ali kada naleti na eksterni link (koji pokazuje ka nekom resursu ili sadržaju koji je na nekoj drugoj domeni) stat će i pitati šta sad. Možete odabrati da ignorira ili preuzme samo taj link ili sadržaj na cijeloj domeni, ovaj put ili da izbor zapamti za ubuduće. Detaljno postaviti opcije izuzetaka je naprosto nemoguće postaviti, pogotovo na većim stranicama / blogovima. Ukoliko ste pisali post koji je zapravo komentar ili osvrt na neko dešavanje, tuđi post i slično, koji sadrži link na ono što vam je poslužilo kao inspiracija ili povod, zašto ne biste backupirali i taj vanjski sadržaj? Download web site(s) + questions osigurava da ćete biti pitani želite li preuzeti dodatan sadržaj ili ne. Ukoliko mislite da će ovo proizvesti previše pitanja i zastajkivanja, te previše odužiti proces backupa, tada odaberite samo Download web site(s).Ovo je idealan način da napravite backup svog sadržaja sa stranica tipa blogger.ba koje ne daju opciju izvoza podataka. Dobiti ćete backup ne samo sadržaja postova, već i slike, komentare…
Pod Web Addresses: (URL) unesite tačnu adresu stranice koju želite backupirati (npr. http://copypaste.blogger.ba). Kao što vidite, moguće je napraviti kopije nekoliko web stranica odjednom. Potom kliknite na dugme Set options… čime dolazimo do onog komplikovanog dijela programa u kojem se ogleda sva njegova snaga.
Tab Proxy možete preskočiti ukoliko ne znate o čemu se radi, ukoliko koristite proxy server onda znate i šta unijeti ovdje i moje pametovanje vam i nije potrebno.
Na tabu Scan Rules se postavljaju pravila koja određuju koje datoteke i odakle će se preuzeti. Npr., ja sam postavio filter
+*.gif +*.jpg +*.png +*.tif +*.bmp
jer sam u backup želio uključiti sve slike koja sam objavio uz postove, ali i
-*.mov -*.mpg -*.mpeg -*.avi -*.asf -*.mp3 -*.mp2 -*.rm -*.wav -*.vob -*.qt -*.vid -*.ac3 -*.wma -*.wmv
jer nisam želio muziku i video. Obzirom da većina blogova ima popis preporučenih kolega u Blogrollu negdje sa strane u kakvom sidebaru koji se prikazuje ne samo na naslovnici već i uz svaki post (tj. apsolutna svaka web stranica-post linka na njih), ovo je zgodno mjesto da naglasite kako želite da se linkovi na te stranice ignoriraju, npr.
-*www.copypaste.ba/*
je prilikom backupa ignoriralo svaki link na moj novi blog, tj. moj aktualni blog nije uključen u backup onog starog.
Tab Limits je također jako važan. Opcija Maximum mirroring depth određuje koliko će linkova u dubinu, brojeći od URLa koji ste zadali, algoritam ići u potrazi za sadržajem koji će kopirati. Ukoliko, kao ja, želite prekopirati cijeli website, ovo ćete polje ostaviti praznim. Druga bitna opcija je Maximum external depth. Kao i prethodna opcija, i ovdje se određuje koliko će algoritam ići u dubinu, ali ovaj put kad su eksterne adrese u pitanju. Moja je preporuka da se i ovo polje ostavi prazno, tj. da se eksterni sadržaji ne preuzimaju uopće. Ukoliko ovdje postavite veliki broj lako vam se može desiti, kao što rekoh maloprije, da prekopirate pola Interneta. Ostale opcije nemojte dirati, izuzev Max transfer rate (B/s) koju developeri preporučuju da se postavi na 2500 B/s.
Na tabu Limits podesite Number of connections na 8 i odaberite Persistent connections opciju. TimeOut (s) postavite na 60, Retries na 3. Ostalo neka ostane prazno / isključeno.
Na tabu Links uključite sve opcije osim treće, Test validity…
Na tabu Build postavite Local Structure Type na Site-structure (ova opcija određuje imenovanje i razvrstavanje preuzetih elemenata po poddirektorijima), a od ostalih opcija uključite samo No external pages (ukoliko je na stranici linkan vanjski sadržaj koji nije backupiran, taj link će u backupu voditi ka stranici s greškom).
Konačno, na tabu Spider odaberite Accept cookies, Parse java files, Update hack i URL hacks. Check document type postavite na If unknown, a Spider na follow robots.txt rules.
Na ostalim tabovima, ako ne znate šta koja opcija radi, ostavite zadane opcije. I to je to, nakon par klikova pokrenuti će se download cijele web stranice koju ste odabrali. Ovisno o veličini websitea i odabranim opcijama proces može potrajati. Ukoliko mislite da ste negdje pogriješili, zaustavite proces, promijenite opcije i pokrenite ga ponovno. HTTrack je dovoljno pametan da nastavi gdje je stao i da pritom nadoknadi možebitne razlike, ovisno o postavkama.
Šta se ovim dobije?

Copying a DVD
Kao što mu i samo ime sugerira, HTTrack Website Copier namijenjen je kopiranju cijelih websiteova i malo čemu drugome. Za nekih 20ak minuta pomoću njega dokopao sam se kopije svog starog copypaste.blogger.ba koja mi sada predstavlja arhivu mojih ranih blogerskih dana 2006-2008. Bez puno muke dobio sam kompletan sadržaj: sve što sam pisao, sve slike, komentare, čak i poneku stranicu koja ne pripada blogu, a za koju mislim da će mi za nekih n godina kada za tom arhivom posegnem biti važna da oslika kontekst nekog posta.
Prije izvjesnog vremena u tekstu Migracija sa Blogger.ba pisao sam o problemima s kojima se susreću blogeri koji žele napustiti ovaj i slične blog servise, te svoje pisanje preseliti negdje drugo. HTTrack rješava dio ovoga problema, tj. omogućava vam da imate arhivu svog sadržaja negdje kod sebe, na sigurnom. Ono što ne rješava je mogućnost izvoza tog sadržaja u obliku koji će neki drugi blog servis, tipa blogspot.com ili wordpress.com znati prepoznati i uvesti u svoju kolekciju. Ono što dobijete je backup, arhivsku kopiju onoga što postoji na Internetu u formi uredno složenih html datoteka – mogućnosti koje inače ne postoje neće se magično pojaviti.
Dakako, ovom ili sličnom procedurom može se prekopirati bilo koja stranica s Interneta, međutim, napominjem da nisam siguran kakvi će se rezultati dobiti ukoliko pokušate prekopirati stranicu koja se velikim dijelom oslanja na skripte (tipa Google Docs ili facebook), što je tipično za mnoge web aplikacije koje su ekstenzija danas sveprisutnog clouda.
Korištene slike:
- CAMERA copy by Norton Photography
- Copy Mac OS X by yago1.com
- Copying a DVD by herzogbr
Pogledajte i ovo:
- Facebook Notes RSS Import fail
- Subscribe to Comments
- Špijuni su među nama – third-party tracking skriven u WordPress pluginu
- Winamp – Media Library backup
- Blog i RSS








