You are on page 1of 4

Baixando sites inteiros com o wget http://www.guiadohardware.net/dicas/baixando-sites-wget.

html
1 de 4 17/09/08 14:28
Assine E-mail SAC Canais
HOME RSS Equipe Busca
+ Home
:. Artigos
:. Tutoriais
:. Dicas
:. Anlises
:. Guias
:. Dicionrio
:. Notcias (arquivo)
:. Livros Online
:. Blog
+ GDH Press
:. Servidores
:. Redes
:. Hardware
:. Ferramentas
:. Kurumin 7
:. Promoes
+ Cursos
+ CDs Linux
+ Kurumin
+ Feeds RSS
+ Loja virtual Plos
+ FrumGdH
+ Publique seu texto
O livro Linux, Entendendo o
Sistema est disponvel completo
para leitura online no site da
GDH Press
Clique para ler
[17/09]
:. Importe filtros do Photoshop
para o GIMP, com o User Filter
[17/09]
:. Primeiro celular com Android
entrando no mercado dia 23?
[17/09]
:. Criado novo processador
tridimensional de 1.4 GHz
[17/09]
:. Samsung oferece USD$ 5,8
bilhes para compra da SanDisk
[17/09]
Baixando sites inteiros com o wget
Dicas do Guia do Hardware
Muitas vezes voc encontra um site cheio de coisas interessantes, mas no dispe de tempo para ler on line na
hora. Ou, encontra algo to importante que pretende guardar em CD ou DVD, para nunca perder. H programas
que podem baixar os sites inteiros, sem que voc precise entrar e clicar em link por link. Existem vrios
programas que se propem a isso, a maioria para Windows, normalmente pagos. Mas h muito tempo h uma
outra soluo gratuita e aberta, muito conhecida pelos usurios de Linux: o wget.
Marcos Elias Pico
17/10/2007
Muitas vezes voc encontra um site cheio de coisas interessantes, mas
no dispe de tempo para ler on line na hora. Ou, encontra algo to
importante que pretende guardar em CD ou DVD, para nunca perder. A
natureza dos sites da web no permitem isso. Voc entra, acessa um site
e navega pela pgina. Se quiser outro contedo, deve clicar num link,
ento o mesmo descarregado at a sua tela. Fica complicado, por
exemplo, querer salvar um site inteiro no seu computador clicando nos
links e salvando pgina por pgina.
L vem a computao novamente, com sua rapidez e inteligncia. Sim,
inteligencia entre aspas porque as mquinas em si so burras, meros
papagaios, como voc sabe s fazem aquilo que foi previamente
programado. H programas que podem baixar os sites inteiros, sem que
voc precise entrar e clicar em link por link. O que esses programas
fazem seguir os links das pginas, deifinidos em HTML pela tag <a
href=...>. No final do processo, voc pode ter todo o site ou vrias
pginas e arquivos do seu interesse.
Existem vrios programas que se propem a isso, a maioria para Windows, normalmente pagos. Quase sempre o que se
encontra so sharewares, que se limitam a funcionar por um perodo determinado ou baixam apenas um certo nmero de
pginas, sendo liberados somente na verso completa. H um gratuito e open source, o HTTrack (WinHTTrack, na verso para
Windows), bom e relativamente bastante usado, por ser fcil e bastante personalizvel. Mas h muito tempo h uma outra
soluo gratuita e aberta, muito conhecida pelos usurios de Linux: o wget. O wget um programa criado inicialmente para o
ambiente Unix/Linux, cujo objetivo principal baixar arquivos da internet. Ele pode ser usado em scripts, tornando a
programao de diversas aplicaes bem mais fcil. Para felicidade de quem usa Windows, saiba que h uma verso portada
dele para o Windows, que funciona exatamente da mesma forma da verso Unix. E para quem quer baixar sites inteiros ou
vrias pginas, ele tambm tem esse recurso. De quebra, um programa bem pequenininho, operado via linha de comando, o
que permite o uso fcil em scripts ou a criao de interfaces.
Antes de comear, tenha em mente que baixar sites inteiros pode prejudicar os sites. Alm dos sites em si, essa tarefa que
pode consumir muita banda de download deles, voc pode acabar prejudicando outros sites que estejam hospedados no
mesmo servidor, especialmente se for um hospedeiro compartilhado mesmo comercial. Muita gente no tem noo de que
baixar sites de uma vez ou acessar excessivamente arquivos grandes pode ser prejudicial, e faz isso sem saber; bom que
voc esteja consciente para no abusar.
Obtendo o wget
Quase toda distribuio de Linux inclui ele. Caso no inclua, experimente instal-lo usando o gerenciador de pacotes da sua
distribuio. Se voc usa Windows, pode baix-lo em:
http://pages.interlog.com/~tcharron/wgetwin.html
O bsico do wget
Para baixar um arquivo com o wget, basta dar o comando wget seguido pelo caminho do arquivo na internet. Exemplo:
wget http://www.umsitequalquer.com.etc/arquivo.zip
E o arquivo ser baixado na pasta atual do prompt de comando. Caso o download seja interrompido (porque o computador
trave, ou o usurio tecle CTRL + C no prompt), possvel recontinuar do ponto em que parou, caso o servidor suporte o
recurso. Basta informar, antes da URL, o parmetro -c, e claro, usar a mesma pasta que contm o pedao anterior do
arquivo:
wget -c http://www.umsitequalquer.com.etc/arquivo.zip
Muita gente usa o wget como gerenciador de downloads (no Linux), em vez de baixar os arquivos pelos navegadores. Ele no
acelera os downloads (como fazem os aceleradores de downloads, que abrem vrias conexes), mas permitir recontinuar do
ponto em que parou muito til, especialmente para quem acessa com conexo lenta ou instvel, que cai toda hora.
Baixando sites inteiros
Passando o parmetro -r, ele baixar todos os arquivos encontrados no domnio. Cuidado, use com ateno e responsabilidade!
Alm de poder atrapalhar o site, voc poder baixar muita coisa intil. A sintaxe seria:
wget -r http://www.umsitequalquer.com.etc
Ele seguir os links definidos em HTML, pela tag <a href...> nas pginas. Links em JavaScript ou em flash no sero
Faa sua busca

Pesquisar
Baixando sites inteiros com o wget http://www.guiadohardware.net/dicas/baixando-sites-wget.html
2 de 4 17/09/08 14:28
:. iWear AV310, tela
individualista simula telo de 52
[17/09]
:. IE 8 beta 2 agora tambm
em portugus
[16/09]
:. Resumo do dia
[16/09]
:. Medindo velocidade da
conexo com Bing
[16/09]
:. Estabelecido novo recorde em
transmisso wireless ptica
[16/09]
:. Novo PC compacto j carrega
o Atom dual-core
[16/09]
:. Intel lana os primeiros
Xeons de seis ncleos
[16/09]
:. VMware anuncia recursos
unificados para datacenters
virtuais
[16/09]
:. Atualizao do Mac OS X:
10.5.5
[15/09]
:. Resumo do dia
[15/09]
:. Estdios e fabricantes
planejam novo padro de vdeo
:. Mais noticias
reconhecidos, e as pginas no sero baixadas. No caso do JavaScript, quase impossvel um programa sair baixando tudo
realmente, pois h vrias formas de se programar links em JavaScript.
Por padro, o wget ignora os arquivos que o produtor do site pediu para ignorar, por meio de um arquivo especial, o
"robots.txt". Esse arquivo serve para os motores de busca de sites de pesquisa; eles lem o arquivo e ficam sabendo para
quais arquivos no devem seguir os links. Isso impede que o wget baixe determinados arquivos, arquivos esses que muitas
vezes so justamente os que voc precisa. Para faz-lo ignorar os arquivos "robots.txt" e baixar tudo o que encontrar, basta
usar o parmetro -erobots=off. Ficaria assim:
wget -r -erobots=off http://www.umsitequalquer.com.etc
Apesar de tecnicamente possvel, um meio no muito legal fazer isso. Essa opo -erobots=off no comentada em muitos
lugares. Novamente alerto, use com responsabilidade ou quando precisar mesmo, afinal no devemos ser contra a
divulgao de informaes. Voc pode us-la, por exemplo, quando quiser baixar um arquivo linkado mas que no esteja
disponvel para ser indexado pelos buscadores (via robots.txt), j que o wget o ignoraria.
Uma dica para reduzir a quantidade de downloads baixar apenas arquivos de determinado tipo, por exemplo, apenas pginas
HTML. Isso possvel com o parmetro -A, especificando a seguir o tipo de arquivo pela extenso. Veja:
wget -r -A .html http://www.umsitequalquer.com.etc
As pginas ASP, PHP, entre outras, sero convertidas em HTML pelo wget (at porque sero pginas j processadas quando o
wget acess-las), ou seja, voc no precisar se preocupar em ficar digitando todas as extenses possveis para as pginas.
Da mesma forma, fica fcil baixar todas as imagens:
wget -r -A .gif http://www.umsitequalquer.com.etc
ou
wget -r -A .jpg http://www.umsitequalquer.com.etc
Depende do que voc precisa.
Dica direta para baixar sites inteiros: o wget possui o parmetro -m, ideal para fazer espelhamentos de sites (mirroring),
onde ele j ativa as opes necessrias. Se seu objetivo fazer um mirror do site, pode ir direto ao ponto:
wget -m http://www.umsitequalquer.com.etc
Outra coisa a identidade do navegador. Alguns sites s oferecem o contedo ao verificarem que determinado navegador
que est acessando a pgina (como o IE, por exemplo), e o wget no conseguiria acesso aos arquivos. Pode-se fingir a
identidade de navegador com esse parmetro:
--user-agent=Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Colocando no texto entre aspas a identificao do navegador e sistema que voc quiser.
Pginas protegidas com senha
Pginas que exibem uma tela de login personalizada, via web mesmo, provavelmente no podero ser baixadas. Digamos que
voc queira baixar todo o contedo do Orkut, ou de uma comunidade ou frum restrito. Ao acessar a pgina, vem uma pgina
do site que pede o login e a senha. O wget pararia nela e se limitaria a pegar as pginas linkadas ela diretamente.
No entanto, pginas que pedem senha diretamente pelo servidor, podem ser baixadas. Estas podem ser acessadas passando o
nome e a senha diretamente na URL, com o wget no seria diferente:
wget http://usuario:senha@servidor.com.etc/arquivo.etc
Tambm pode ser usado para servidores FTP, bastando trocar o http:// por ftp://.
Outros parmetros importantes
Atravs de diversos parmetros podemos controlar melhor o donwnload dos arquivos. Eis alguns importantes:
-t0
Nmero de vezes que ele deve tentar baixar um arquivo, caso no consiga. Definindo zero deixa configurado como ilimitado,
o que faz ele ficar tentando at conseguir baixar. Observe que deve-se deixar o nmero logo ao lado da letra t, sem espao.
bom us-lo mas com cuidado, num site com muitos arquivos e uma conexo ruim, voc pode ficar forando o download de
vrios arquivos que nunca sero baixados, toa. Por precauo, defina um nmero menor, como -t3 ou -t5.
-c
Permite continuar downloads interrompidos, sem que ele precise baixar o que j foi baixado, incluindo pedaos de arquivos (e
no apenas pginas). bom us-lo, principalmente quando no der tempo de baixar o que voc quer em uma nica vez.
-np
Ideal para baixar pginas de uma mesma rea de um site. Com o -np (no-parent) ele baixa apenas os arquivos da URL
definida sem pegar a pasta pai dela. Por exemplo, utilize caso queira baixar o site http://www.site.com.etc/algumacoisa, mas
no o contedo do http://www.site.com.etc (e sim apenas da pasta /algumacoisa).
-T30
Define o timeout (limite de tempo) para 30 segundos. Quando ele fica espera do arquivo, em conexes lentas, esse
parmetro orienta a refazer a conexo para puxar tal arquivo a cada 30 segundos, at conseguir. Observe a diferena que este
em letra maiscula.
E os donos dos sites, como ficam?
Certamente no gostam nada nada disso. possvel aplicar alguns bloqueios diretamente no servidor (o que foge ao objetivo
deste texto, alm do que variar muito dependendo do software de servidor utilizado), por exemplo, bloqueando IPs que
acessem vrias pginas por segundo (mais precisamente um nmero maior de bytes definido por voc), reduzir a velocidade,
ou at mesmo banir o IP por um perodo.
Mas no haver muito o que fazer para pginas em si. O pessoal d um jeito, afinal se pode ser acessado pelo navegador,
poder ser baixado e salvo.
Uma dica para evitar downloads automtico de arquivos grandes, poupando banda do servidor, usar um link definido em
JavaScript. Praticamente nenhum programa copiador de sites identificaria o link, mas nos navegadores funcionaria normal.
Baixando sites inteiros com o wget http://www.guiadohardware.net/dicas/baixando-sites-wget.html
3 de 4 17/09/08 14:28
Estar com o JavaScript habilitado nos micros clientes hoje praticamente obrigatrio, no existe mais aquele papo de
problemas de compatibilidade. Sendo assim, no se preocupe com o link em JavaScript, pois ele funcionar.
A criao do link fica a seu critrio, evite colocar o nome do arquivo por inteiro. Um exemplo prtico: definindo uma funo na
pgina:
<script language=javascript>
function BaixaCoisa(arq){
self.location.href = arq;
}
</script>
E chamando a funo nos links assim:
<a href="javascript:BaixaCoisa('/arquivo.iso');">Clique aqui para baixar o CD</a>
Se preferir, pode complicar mais, mas dar mais trabalho para implementar. Exemplo (este coloque diretamente no local
onde for ficar o link):
<script language=javascript>
document.write('<a href=');
document.write('arquivo.zip');
document.write('>');
document.write('clique aqui');>
document.write('</a>');
</script>
Um outro meio um pouco mais complicado de implementar, aplicar CAPTHA, aquela verificao de letras e nmeros
aleatrios em determinadas sees do site. O programa pra ali. Mas cuidado, a maioria dos sistemas no permitem o uso por
deficientes visuais, o que prejudica legal a acessibilidade do seu site, especialmente se usar isso em reas essenciais.
isso. Responsabilidade sempre!
Comente em: http://www.guiadohardware.net/comunidade/dica-sites/793957/
Glossrio
Open Source
Mirroring
Login
Linux
Processo
Servidor
Windows
Web
Tag
T3
JPG
ISO
CD
AT
ASP (2)
ASP +
Download
DVD
Internet
HTML
GIF
FTP
ASP
Blog: Blog: Blog: Blog:
Gostou do texto? Veja nossos livros impressos:
Hardware | Redes | Servidores | Kurumin 7
... ou encontre o que procura usando a busca:
Pesquisar
Atualizaes Atualizaes Atualizaes Atualizaes
[17/09] Tutorial: Blender 3D, parte 2
[16/09] Artigo: Sobre o Ubuntu, seus derivados e marcas
registradas
[16/09] Barramentos: Entendendo o PCI e o PC Card
[15/09] Dica: Klavaro, um programa-curso de digitao para Linux
e Windows (atualizado)
[14/09] SSDs, HHDs, ReadyBoost e ReadyDrive
[13/09] TCP/IP, endereamento, portas, CIDR e IPV6
[12/09] Artigo: Opes de e-mail mvel
[12/09] Tutorial: OpenSUSE, parte 1
[12/09] Formatos de placas-me
[11/09] Dica: Debian GNU/Linux 5.0 no ASUS Eee PC 900
[11/09] Configurao do Setup, drivers e utilitrios
[10/09] Tutorial: Blender 3D, parte 1
ltima turma do ano: Curso de Servidores Linux, com Carlos E. Morimoto, de 26 a 28 de setembro, em So Paulo/SP
[17/09] :. Windows Mobile: pegando carona na conexo de outros aparelhos
[16/09] :. GPS em smartphones, parte 1
[16/09] :. Barramentos: Entendendo o PCI e o PC Card
[15/09] :. Como funciona o GPS
[15/09] :. Suporte a hardware no OpenSUSE
[14/09] :. SSDs, HHDs, ReadyBoost e ReadyDrive
[14/09] :. OpenSUSE: Servios de rede
Baixando sites inteiros com o wget http://www.guiadohardware.net/dicas/baixando-sites-wget.html
4 de 4 17/09/08 14:28
Destaques Destaques Destaques Destaques
Configurando um servidor DHCP
Redes: Endereamento
Linux: Resolvendo problemas com o apt-get
Hardware: Arquiteturas
Placa-me
Mandriva Flash 2008.1 no ASUS Eee PC 900
Blender 3D, parte 1
Instalando servidores Debian e Ubuntu
Redes: Instalando o Squid
Dica rpida para salvar DVDs e assistir depois
Assine o RSS
Add to iGoogle
Receba as atualizaes diariamente por e-mail:
Inscrever
1999-2007 Guia do Hardware. Todos os direitos reservados. 1999-2007 Guia do Hardware. Todos os direitos reservados. 1999-2007 Guia do Hardware. Todos os direitos reservados. 1999-2007 Guia do Hardware. Todos os direitos reservados.
Livros de Carlos E. Morimoto HOME

You might also like