quarta-feira, outubro 08, 2008

Como copiar notícias do O Globo

Algumas publicações insistem em brigar com a Web. Isto é mais drástico naquelas cuja principal forma de distribuição são árvores mortas. E tome encheção de saco para cima dos navegantes:
  • Páginas que não se pode fazer bookmark (como mandar para amigos por email?)

  • URLs que expiram (não adianta guardar para referência)

  • Textos escondidos atrás de páginas de login (não se pode fazer buscas pois o Google não as enxerga)

  • Impressão é proibida (deve ser por motivos ecológicos)

  • Proibido aumentar a fonte (quem mandou usar óculos?)

  • Copy'n paste proibido ("Vamos neste filme hoje? Copio abaixo os detalhes")

O jornal O Globo é um dos culpados pela última ofensa da lista.

Só que na Web dos navegadores open-source totalmente customizáveis, a gente pode se rebelar. Aproveitando meus recém adquiridos super-poderes de Javascript, fiz um bookmarklet que após clicado permite copiar notícias do sítio do O Globo.

Pra quem não sabe, Bookmarklet é um link especial que ao ser clicado executa um pequeno programa que interage com a página que se está lendo. O link se guarda como um bookmark no browser, por isto o nome.

São mil e uma utilidades. Existem bookmarklets para mudar as cores de telas ilegíveis para ficar com texto preto no branco, permitir aumentar caixas de texto mínimas e se tenha espaço decente para escrever, ou para ver uma versão arquivada de uma página que deixou de existir.

Bom, fiz meu primeiro bookmarklet. Após clicar nele, você poderá copiar e colar as páginas do sitio do O Globo sem ficar recebendo mensagens chatas. Para tê-lo sempre consigo, arraste e solte para a barra de ferramentas do seu browser este link: Globo copiável. Só testei no Firefox 3.0, mas deve funcionar no Internet Explorer.

Ele foi feito com a mão na roda da ferramenta Bookmarklet Builder, que transforma um código compreensível em um javascript de uma só linha. Eis o código formatado direito:
(function(){
document.onkeypress=null;
copyright=function(){
}
var mat=document.getElementById('materia');
if(mat)
mat.oncopy=null;
}
)()
Ele desativa os dois avisos de proibido copiar que aparecem. Desliga os eventos para Firefox e IE e, desnecessariamente, também redefine a função copyright para não fazer nada.

Boa cópia!