Na verdade, a pergunta correta seria: como baixar todas as páginas – e seus recursos (css, javascript, imagem, etc) – de um site web?
Após uma breve pesquisa, fiquei surpreso ao saber que possuía a ferramenta adequada para essa tarefa, mas ao mesmo tempo decepcionado comigo mesmo por se tratar de um utilitário que uso a um bom tempo – aquela velha história, compra-se um produto mas não se importa em usar todo o seu potencial.
O Wget é uma ferramenta de linha de comando bem clássica para este tipo de tarefa. Ele vem com a maioria dos sistemas Unix/Linux, há versão para o Windows também (mais recente está disponível aqui).
Assim temos:
wget -r --no-parent http://site.com/pdfs/ |
Aqui mais dois ótimos sites como exemplo:
Tenho alguns livros sobre Java, mas com as mudanças que a linguagem sofreu nos três últimos anos tenho por mim que minhas referências estão desatualizadas. Meu grande interesse é entender melhor os detalhes que muitos programadores (vindos de outra linguagem ou não) ignoram – seja por desconhecimento, seja por desinteresse, pois o arcabouço de APIs Java é muito amplo.
Enquanto realizo minha tarefa diária – implementando ou corrigindo código – costumo manter ao meu lado algumas referências e hoje vou postar as que costumo consultar via internet. Vamos a elas:
A um tempo atrás escrevi sobre o utilitário de sistema update-alternatives e mostrei como alternar entre versões do Java usando o mesmo. Naquele mesmo post mostrei que o Java já havia sido instalado e configurado pelo sistema de gerenciamento de pacotes pre-definido – Yast. Como já é de conhecimento de alguns a Oracle mudou a forma de licenciamento do Java e com isso a maioria das distribuições – senão todas – optaram por retirar o Java distribuído pela Oracle de seus repositórios. Com isso, se você precisar instalar a versão Java da Oracle terá que fazê-la manualmente.
Antes de começar, quero notificar aos usuários do navegador Chromium que como eles tive dificuldades, no início, para fazê-lo funcionar com Java ao acessar o site do Banco do Brasil. Para confirmar este problema é só fazer uma pesquisa no Google usando a seguinte sentença: chromium banco do brasil. Então para a felicidade geral nação “chromiumana”, relato que esta maneira manual aqui demonstrada soluciona este pequeno problema.
Então vamos lá!
Os passos são esses:
- Baixe a versão RPM do site da Oracle – baixei a versão jre-7u3-linux-i586.rpm;
- Instale o jre com yast2, zypper, ou com um duplo clique no rpm pelo dolphin ou nautilus:
SUGEP265338:~ # zypper in jre-7u3-linux-i586.rpm |
- Agora precisamos adicionar esta instalação às alternativas já instaladas, de forma a disponibilizá-la como uma opção:
SUGEP265338:~ # update-alternatives --install /usr/bin/java java /usr/java/jre1.7.0_03/bin/java 40 |
- Faremos o mesmo para o plugin java. Esta opção é muito importante pois estabelece qual versão Java para navegação web estaremos usando:
SUGEP265338:~ # update-alternatives --install /usr/lib/browser-plugins/javaplugin.so javaplugin /usr/java/jre1.7.0_03/lib/i386/libnpjp2.so 40 |
- Bom, agora vem a parte mais fácil que é, como escrevi no primeiro post, alternar entre tais versões:
SUGEP265338:~ # update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/jre-1.6.0-openjdk/bin/java 17105 auto mode
1 /usr/java/jre1.7.0_03/bin/java 40 manual mode
2 /usr/lib/jvm/jre-1.6.0-openjdk/bin/java 17105 manual mode
Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/java/jre1.7.0_03/bin/java to provide /usr/bin/java (java) in manual mode.
SUGEP265338:~ # |
- E finalmente, o mais importante, o plugin para os navegadores web:
SUGEP265338:~ # update-alternatives --config javaplugin
There are 2 choices for the alternative javaplugin (providing /usr/lib/browser-plugins/javaplugin.so).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/IcedTeaPlugin.so 17106 auto mode
1 /usr/java/jre1.7.0_03/lib/i386/libnpjp2.so 40 manual mode
2 /usr/lib/IcedTeaPlugin.so 17106 manual mode
Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/java/jre1.7.0_03/lib/i386/libnpjp2.so to provide /usr/lib/browser-plugins/javaplugin.so (javaplugin) in manual mode.
SUGEP265338:~ # |
Pronto! Feche o navegador e faça um teste. Até a próxima!
Atualização(12/07/2012): Hoje pela manhã, procurando por mudanças que torne o script update-alternatives compatível com o jdk 1.7, me deparei com uma forma bem mais simples de instalar manualmente o jdk Oracle. Veja:
zypper install jdk-7-linux-x64.rpm
cd /usr/java/jdk1.7.0/bin
for bin in *; do update-alternatives --install /usr/bin/$bin $bin $(pwd)/$bin 20000; done |
Agora o javaplugin para o navegador:
update-alternatives --install /usr/lib64/browser-plugins/javaplugin.so javaplugin /usr/java/jdk1.7.0/jre/lib/amd64/libnpjp2.so 20000 |
Usei a versão 64bits mas o procedimento vale também para 32bits.
As seguintes extensões (complementos) para o navegador FireFox melhoram bastante a navegabilidade:
Existem mais complementos, alias uma infinidade deles, que ajudam e transformam o navegador FireFox em um aplicativo de uso diário. Estes são prioridade para mim e com este post posso buscar e instalar rapidamente.
Há algum tempo venho tentando personalizar a barra lateral(sidebar) do tema(iNove template) que adotei pro blog. Mas quando adiciono, por exemplo, um widget no sidebar Norte ele aparece duplicado.
Hoje encontrei uma discussão sobre o assunto e finalmente a solução. Veja, como estão definidos os widgets para este tema:
- North sidebar: Recent Posts, WP-RecentComments, Tag Cloud
- South sidebar: Meta
- West sidebar: Archives
- East sidebar: Categories
Então, se você quiser remover o widget Archives:
- escolha Appearance->Widgets
- selecione west_sidebar
- arraste um widget Text para o sidebar selecionado e salve
Colocando um widget de Text vazio faz a mágica. Foi o que coloquei em cada sidebar! Desta forma pude personalizar o primeiro(North sidebar)

Diversos autores compartilham experiências de vida sob uma ótica cristã, trazendo mensagens diárias (simples mas profundas) de encorajamento e reflexão, que mostram uma nova perspectiva de enfrentar os desafios da vida cotidiana. Pastores, escolas, empresas, igrejas e cidadãos que querem crescer na vida devocional têm procurado esse material.
Participo de um projeto na Igreja Batista Memorial de Palmas onde transcrevemos os textos das obras sitadas e os enviamos por e-mails. Este procedimento só foi possível após a autorização dos editores destas obras.
Iniciamos o projeto realizando o envio das mensagens listando no campo “para” todos os e-mails já selecionados em um senso realizado(pelos membros na igreja) na própria quadra da igreja. Vimos que transcrever e enviar as mensagens não era uma atividade muito fácil, pois tínhamos problemas:
- novos convites eram feitos e novos e-mails teriam que ser adicionados;
-
formato da mensagem não era padronizado – cada membro da equipe enviava de uma forma;
-
não tínhamos o controle de qual mensagem já havia sido transcrita – no inicio alguns foram repetidas;
-
nem toda a equipe tinha conhecimento básico de informática e isso causou um grande transtorno, pois alguns usavam o Microsoft Word mais atual enquanto outros versões antigas.
Propus o uso de alguns mecanismos disponibilizados na rede mundial para auxiliar o controle e organização do projeto. Veja as opções que escolhi:
- DropBox – precisávamos de um lugar comum para armazenar as mensagens transcritas e as já enviadas(veja o cliente para linux);
- Google Groups – precisávamos de um mecanismo para gerenciar os e-mails das pessoas interessadas(convidadas) em receber uma mensagem reflexiva;
- precisávamos definir um formato da mensagem (veja logo abaixo como ficou);
- precisávamos definir qual versão do Microsoft Word usaríamos (escolhemos Microsoft Word 97/2000/XP)

cliente dropbox linux

Formato de transcrição de texto
Minha escolha foi arriscada e ao mesmo tempo feliz. Arriscada por ter uma equipe com pouco ou nenhum conhecimento em informática básica. Confesso que a maior parte do trabalho é realizada por mim, mas estou feliz pelas escolhas que fiz – posso treinar um membro da equipe facilmente nos mecanismos escolhidos.
Bom, tive duas intenções ao escrever este post: a primeira descrever a experiência e o desafio que é desenvolver este trabalho; a outra é convidá-lo: receba você também uma porção diária da Bíblia em seu e-mail!
Os benefícios de uma leitura constante da Bíblia são imensos, mas isso conto em outro post.