Jump to content
skin

Proteger e-mail de crawler bot's

Recommended Posts

skin

Este pequeno script que eu desenvolvi em javascript e tenho usado nos meus sites permite adicionar uma camada extra de protecção no vosso site contra bots que fazem crawling pelas páginas à procura de e-mails para spam sem necessitar de utilizar imagens o que torna as coisas mais complicadas para os visitantes.

Como a maneira de funcionar de alguns é através de ler o source da página em busca de e-mails usando expressões regulares (por exemplo) este script protege o vosso mail contra esses casos. Não é à prova de bala, nem lá perto, mas é sempre uma camada extra de protecção.

<script language="JavaScript" type="text/javascript">
<!--
    var email = "omeuemailevunito";
    var dominio = "joaopedropereira.com";
    document.write(email + "@" + dominio);
//-->
</script>


Our lives begin to end the day we become silent about things that matter - Martin Luther King

Share this post


Link to post
Share on other sites
skin

Existem alguns bots que utilizam o wget/sistemas idênticos (por exemplo) não sei se tens ai o wget à mão mas se tiveres mete isso numa página e tenta sacar o mail. Não consegues porque o que ele faz é ler o HTML gerado, como se tivesses a Ver Código Fonte no teu browser, e assim apenas te aparece um script javascript e não o mail omeuemailevunito@joaopedropereira.com

Entendes?


Our lives begin to end the day we become silent about things that matter - Martin Luther King

Share this post


Link to post
Share on other sites
fnds

skin, gostei da ideia, o problema é que se o js estiver desactivado (o que não é comum)...

Aliás, caso o js esteja desactivado pode-se usar uma tag noscript e colocar lá o email com aquelas tags manhosas, mail [at] domínio [dot] com.

Share this post


Link to post
Share on other sites
Battousai

skin, gostei da ideia, o problema é que se o js estiver desactivado (o que não é comum)...

Pois, nem nenhuma das alternativas é acessível a cegos, etc... Mas pronto do mal o menos.

Share this post


Link to post
Share on other sites
fnds

Pois, nem nenhuma das alternativas é acessível a cegos, etc... Mas pronto do mal o menos.

Estás a gozar, mas eu costumo navegar com o javascript e com os cookies desactivados....

Share this post


Link to post
Share on other sites
yoda

Existem alguns bots que utilizam o wget/sistemas idênticos (por exemplo) não sei se tens ai o wget à mão mas se tiveres mete isso numa página e tenta sacar o mail. Não consegues porque o que ele faz é ler o HTML gerado, como se tivesses a Ver Código Fonte no teu browser, e assim apenas te aparece um script javascript e não o mail omeuemailevunito@joaopedropereira.com

Entendes?

Ah, sim :)

Não sabia como esses programas funcionavam ..

Share this post


Link to post
Share on other sites
Battousai

Estás a gozar, mas eu costumo navegar com o javascript e com os cookies desactivados....

Disse alguma coisa que te contradiz? Estou até a dar-te razão

Share this post


Link to post
Share on other sites
pedrotuga

bem, há uma alternativa que acecível a cegos:

pedro arroba pedro ponto com

Keep it simple :)

para quem quiser ir mais alem pode usar

Share this post


Link to post
Share on other sites
skin

Quem não usa javasript que passe a usar :)

Relativamente a outras formataçoes como por exemplo usar o que o fnds referiu: "mail [at] domínio [dot] com" já não é seguro porque já existem bot's que já estão prontos para este tipo de formatação devido à popularidade que ela ganhou.

Quanto ao que o pedrotuga referiu já é outra situação porque estamos a falar de língua portuguesa ( B) ) e é uma formatação que não pegou moda nem se vê muito.


Our lives begin to end the day we become silent about things that matter - Martin Luther King

Share this post


Link to post
Share on other sites
djthyrax

Relativamente a outras formataçoes como por exemplo usar o que o fnds referiu: "mail [at] domínio [dot] com" já não é seguro porque já existem bot's que já estão prontos para este tipo de formatação devido à popularidade que ela ganhou.

Nem JavaScript é. Com userscripts, consegues aceder ao conteúdo renderizado e não ao source enviado pelo servidor, pelo que torna a tua solução igualmente falível. Uma das melhores soluções ainda é o uso de imagens ou URL encoding, que apesar de falíveis, excluem 80% dos crawlers gerais que aí andam.

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Share this post


Link to post
Share on other sites
skin

Nem JavaScript é. Com userscripts, consegues aceder ao conteúdo renderizado e não ao source enviado pelo servidor, pelo que torna a tua solução igualmente falível. Uma das melhores soluções ainda é o uso de imagens ou URL encoding, que apesar de falíveis, excluem 80% dos crawlers gerais que aí andam.

Onde é que eu na sitação que fizeste falo em JavaScript?

Todos os métodos são falíveis, o de utilizar imagens não é excepção. So what? Vamos deixar de tentar dificultar as coisas?

Eu apenas postei um método, quem quiser usar usa, quem não quiser não usa é simples.


Our lives begin to end the day we become silent about things that matter - Martin Luther King

Share this post


Link to post
Share on other sites
djthyrax

Onde é que eu na sitação que fizeste falo em JavaScript?

Apenas peguei na citação para desenvolver a ideia e aplicá-la ao teu código, acrescentando mais soluções. :D

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Share this post


Link to post
Share on other sites
skin

Outra maneira que encontrei hoje, também javascript based: http://snipplr.com/view/6422/secure-email-display/

function createJSMailLink($email) {
$numArray = array();

for($a = 0; $a < strlen($email); $a++) {
	$numArray[] = ord($email{$a});
}

$asciiString = implode(",", $numArray);

return <<<EOL
<script type="text/javascript" charset="utf-8">
//<![CDATA[
var r="";var d=new Array({$asciiString});for(var a=0; a < d.length; a++){r+=String.fromCharCode(d[a]);}
document.write("<a href=\""+"mailto:"+r+"\">"+r+"</a>");
//]]>
</script>
EOL;
}


Our lives begin to end the day we become silent about things that matter - Martin Luther King

Share this post


Link to post
Share on other sites
IceBrain

Também há uma versão em CSS:

span.codedirection { unicode-bidi:bidi-override; direction: rtl; }

<p><span class="codedirection">zab.rab@oof</span></p>

/* Output on screen: */
email me: foo@bar.baz

Mas o melhor mesmo é ter uma imagem, e com um link por baixo que diga "Se não conseguir ver a imagem com o endereço de email, clique aqui" e que redirija para um ficheiro WAV com a leitura do email.


❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Share this post


Link to post
Share on other sites
redinpais

Só para apimentar a discussão...

Qual é a razão da necessidade de esconder de forma publica o endereço de email?

 

Share this post


Link to post
Share on other sites
HappyHippyHippo
24 minutes ago, redinpais said:

Só para apimentar a discussão...

Qual é a razão da necessidade de esconder de forma publica o endereço de email?

 

 

On 22/09/2008 at 11:51 PM, skin said:

contra bots que fazem crawling pelas páginas à procura de e-mails para spam

 


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
redinpais
51 minutos atrás, HappyHippyHippo disse:

contra bots que fazem crawling pelas páginas à procura de e-mails para spam

E se existisse um servidor de email que daria ao utilizador a liberdade de publicar o seu email sem que viesse a sofrer dessa má prática?

No pressuposto de tal ser possível, seria aceite ou não teria qualquer credibilidade?

Share this post


Link to post
Share on other sites
HappyHippyHippo
23 minutes ago, redinpais said:

E se existisse um servidor de email que daria ao utilizador a liberdade de publicar o seu email sem que viesse a sofrer dessa má prática?

No pressuposto de tal ser possível, seria aceite ou não teria qualquer credibilidade?

estás a perguntar se uma pessoa acredita numa segunda pessoa sobre algo que uma terceira pessoa possa fazer ou não ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
redinpais
1 minuto atrás, HappyHippyHippo disse:

estás a perguntar se uma pessoa acredita numa segunda pessoa sobre algo que uma terceira pessoa possa fazer ou não ?

Não!

Share this post


Link to post
Share on other sites
HappyHippyHippo
1 minute ago, redinpais said:

Não!

sim

primeira pessoa : eu

segunda pessoa : servidor de emails

terceira pessoa : spammer

Edited by HappyHippyHippo
typo

IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.