Arquivo de julho, 2010

Tudo que você precisa saber sobre o Projeto Aelle (Parte 2)

4 de julho de 2010

Damos continuidade a explicação sobre o Projeto Aelle, na primeira parte falamos da utilização do site, e agora, falamos um pouco de sua API.

Antes de mais nada, devo informar que este post não serve como uma documentação da API do Aelle, ela já está escrita aqui.

Antes de começarmos você deve ter uma chave para realizar as consultas em nossa API, você pode consegui-la clicando aqui. E é claro, ler a documentação da API para não realizar nenhuma requisição errada.

Para o exemplo em PHP irei utilizar uma chave fictícia:

1
625v39165efy8mpum9da

Utilizando PHP + Snoopy para se conectar ao Aelle.

O Snoopy (que pode ser encontrado aqui) é uma classe legal (que eu gosto de usar) para fazer requisições HTTP em outros sites. Caso você não queira muita dificuldade, recomendo que a utilize.

Observe o código abaixo utilizando o Snoopy:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
include("snoopy.class.php");
//Inicializa a classe Snoopy
$snoopy = new Snoopy;

//Defino uma variável onde posso guardar a Chave da API
//E também a URL de consulta
$chaveAPI = "625v39165efy8mpum9da";
$urlConsulta = "http://api.projetoaelle.com/1/info/user/".$chaveAPI.":json";

//É interessante que você indique um User Agent
//(que pode ser criado por você para identificar o seu sistema) e
//um site de referência (que seja o seu).
$snoopy->agent = "Foco Livre Exemplo (Teste do Blog; PT-BR) v1.0";
$snoopy->referer = "http://blog.focolivre.com/";

//Realizo a consulta na API do Projeto Aelle
if($snoopy->fetchtext($urlConsulta)) {
    echo $snoopy->results;
} else {
    echo "Ocorreu um erro: ".$snoopy->error;
}

Da maneira como foi mostrado acima, o sistema retornaria um texto em formato JSON, como mostrado abaixo:

1
2
3
4
5
6
7
8
9
10
11
{
    "status":200,
    "error":false,
    "requesitions":"1",
    "limit":"100",
    "remainder":99,
    "whitelist":false,
    "blocked":false,
    "client":"Usuario Teste",
    "api_key":"625v39165efy8mpum9da"
}

Ou, dependendo da sua escolha, o resultado também pode ser formatado em XML, como mostrado abaixo:

1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="UTF-8"?>
<item>
    <status>200</status>
    <error>false</error>
    <requesitions>2</requesitions>
    <limit>100</limit>
    <remainder>98</remainder>
    <whitelist>false</whitelist>
    <blocked>false</blocked>
    <client>Usuario Teste</client>
    <api_key>625v39165efy8mpum9da</api_key>
</item>

Para decodificá-lo, você pode utilizar a classe existente no próprio site do JSON. Vale lembrar que os resultados podem ser retornados nos formatos JSON ou XML, são os únicos trabalhados pela API, e que podem ser lidos através de qualquer linguagem. Este foi apenas um exemplo em PHP, o que não impede de ser acessível também ao JAVA, ASP.NET, C#, PHYTON e etc.

Não se esqueça! Lembre-se de ler a Documentação Completa da API para entender o seu funcionamento.

Utilizando PHP + cURL para realizar as requisições no Projeto Aelle.

O cURL é mais completo do que o Snoopy, e é o que recomendo aos usuários que optam por uma consulta mais arrojada, pode parecer um pouco complexo mas não é, uma documentação completa sobre o cURL você encontra no próprio site do PHP.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//Defino uma variável onde posso guardar a Chave da API
//E também a URL de consulta
$chaveAPI = "625v39165efy8mpum9da";
$urlConsulta = "http://api.projetoaelle.com/1/info/user/".$chaveAPI.":json";

//Inicia a sessão
$session = curl_init($urlConsulta);
curl_setopt($session,CURLOPT_HEADER,false);
curl_setopt($session,CURLOPT_USERAGENT,"Foco Livre Exemplo (Teste do Blog; PT-BR) v1.0");
curl_setopt($session,CURLOPT_REFERER,"http://blog.focolivre.com/");
curl_setopt($session,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($session,CURLOPT_TIMEOUT,10);
curl_setopt($session,CURLOPT_RETURNTRANSFER,true);
//Chama as informações da página
$page = curl_exec($session);

//Imprime o resultado em JSON ou XML
//Dependendo da requisição que foi realizada.
echo $page;

O resultado retornado é o mesmo que foi exibido acima, e no caso do JSON você também precisará da biblioteca para decodificá-lo.

Tudo que você precisa saber sobre o Projeto Aelle! (Parte 1)

4 de julho de 2010

Infelizmente com o avanço das redes sociais, muitos usuários utilizam de certas facilidades para transmitir informações falsas inclusive URLs encurtadas cujo o destino são sites maliciosos ou vírus que prejudicam os utilizadores destas redes e também as próprias redes sociais. Buracos como esses tendem a ser falhas de seguranças muito grandes que o Projeto Aelle tenta contornar.

O Projeto Aelle, não é um sistema pago, pelo contrário, é gratuito e lhe possibilita pesquisar em nosso banco de dados através de sua API completa e que o melhor de tudo, possui praticamente os mesmos resultados que você obtém na página inicial.

Para quem o Aelle Serve?

Você identifica os acessos em seu site através de UAs (User-Agents) e gostaria de saber quem são? Você gostaria de saber se as URLs que seus usuários divulgam em suas páginas estão em alguma Blacklist? Gostaria de Desencurtar URLs de qualquer serviço de encurtamento?

Então o Aelle é para você!

Através de uma API completa (onde a documentação você pode ver aqui) você tem acesso a todas essas funcionalidades (as mesmas que você vê na página principal), a única coisa que você precisa fazer é um cadastro bem rápido e obter uma chave da API para acesso.

Explicação rápida sobre os serviços prestados pelo projeto.

Uma base do que você precisa saber e de como pode utilizar o Aelle em seu website, sistema ou serviço.

Informações de User-Agents

O projeto reúne uma base de dados de quase 140 mil User-Agents existentes ao redor da internet, eles são identificados como Browsers, Mobile Browsers, Crawlers, RSS Readers, Bots e etc.

O bacana é que, quando você pesquisa um UA referente a um Browser por exemplo, ele retorna qual versão do CSS ele suporta, se aceita Java Script, Iframe, Cookies e Applets (isso muitos dos navegadores padrões aceitam, mas outros, inclusive os móveis ainda não). Possivelmente, informações sobre o suporte ao HTML 5 estarão disponíveis em breve!

Informações sobre URLs na Blacklist

É incrível, mas todos os dias, inúmeras URLs são dadas como impróprias, por conterem Malware ou levarem o usuário a algum site com vírus. Mas isso não significa que todas as URLs registradas sejam impróprias. Existem variantes de domínios originais como Google, You Tube e Twitter que se fazem de erros de digitação para “fisgar” um usuário desavisado (Phishing).

Observe abaixo um exemplo feito com o site Facebook.

Repare a quantidade de URLs que possuem facebook como nome, incluindo sites adultos, proxys e o pior de tudo Malware e Phishing. As URLs marcadas em vermelho e indicam os sites impróprios da Blacklist. O Projeto Aelle utiliza sinalizações de cor que indicam a situação da URL na lista, ou seja:

Verde, indica que o site é o original ou não apresenta perigo;
Amarelo indica atenção;
Vermelho indica  que a URL é perigosa e que abrí-la pode prejudicar seu computador e também seus dados.

Desencurtando URLs

Sim, o serviço de encurtamento de URLs é ótimo e tem o seu valor, diminuir URLs enormes para poucos caracteres, de fácil memória e até mesmo de compartilhamento, isso dentre outros benefícios tornaram esse serviço inovador. Porém, existem pessoas que utilizam este serviço para encurtar URLs que levam a sites de phishing ou malware,  e infelizmente você só terá conhecimento que o site é impróprio, quando já o tiver acessado. E até ai, pode ser tarde demais…

O serviço de desencurtamento do Projeto Aelle, abrange TODOS OS SERVIÇOS de encurtamento, inclusive Proxys de redirecionamento. O Projeto também não descobre apenas o destino de uma URL encurtada, pois algumas pessoas mal intencionadas, criam de 3 a 5 redirecionamentos diferentes para burlar estes sistemas, mas não burla o Aelle. Ele segue todos os redirecionamentos até encontrar a página final, e verifica ainda, junto a nossa base de dados, se a mesma se encontra na blacklist.

Ao clicar em Revelar, o sistema acessará a URL encurtada e seguira os redirecionamentos até o seu destino, exibindo os resultados:

Os resultados retornados indicam os dados coletados pelo sistema, ou seja, a Velocidade de Download, Tamanho da Página carregada, Formato (Informa o Mime Type do arquivo carregado), e o Tempo de Redirecionamento. (Todos estes dados também estão presentes na API)

Ocultar Emails

Infelizmente é cada vez mais comum que emails se tornem alvos de SPAM, isso ocorre porque existem sistemas que pesquisam emails inseridos em diversos sites pela internet, acrescentando você em alguma lista para receber emails indesejáveis. Inclusive, existem sistemas que além de pegar o seu email como: teste@teste.com.br, utilizam do seu domínio para testar outros nomes comuns, e tentar, de alguma maneira, capturar o máximo de emails que um domínio possui.

O Projeto Aelle possui um sistema que oculta o seu email, e só é revelado a alguém de forma mecânica, semelhante ao reCAPTCHA. Veja abaixo o exemplo:

Repare que ao inserir o Email, o Projeto Aelle esconde o nome, e também o domínio, para que nenhum sistema automatizado possa gravá-lo. É retornado a você uma imagem, e um exemplo em forma de texto, você pode usar ambos em seu sistema.

Para ver o funcionamento, você pode clicar nos links ao lado (Certifique-se que seu navegador não bloqueie Pop-Ups): (imagem), te…e@t…e.com.br (Texto) . Repare que uma janela será aberta e você precisará preencher o CAPTCHA informado (O texto que aparecerá na imagem), ao fazer isso o sistema irá lhe demonstrar o email ocultado.

Exemplo do código em HTML para o formato da imagem:

1
2
3
<a title="Revelar este email" onclick="window.open('http://api.projetoaelle.com/1/openmail/u:MDkxNTFhNjliYjAyZTJjZGU2ZWZiZGU5ZjI0NmM5NzcwNGU0Y2FiOQ==', '', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=500,height=300'); return false;" href="http://api.projetoaelle.com/1/openmail/u:MDkxNTFhNjliYjAyZTJjZGU2ZWZiZGU5ZjI0NmM5NzcwNGU0Y2FiOQ==">
<img src="http://api.projetoaelle.com/1/getmail/u:MDkxNTFhNjliYjAyZTJjZGU2ZWZiZGU5ZjI0NmM5NzcwNGU0Y2FiOQ==" border="0" alt="" />
</a>

Exemplo do código em HTML para o formato do texto:

1
2
3
<a title="Revelar este email" onclick="window.open('http://api.projetoaelle.com/1/openmail/u:MDkxNTFhNjliYjAyZTJjZGU2ZWZiZGU5ZjI0NmM5NzcwNGU0Y2FiOQ==', '', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=500,height=300'); return false;" href="http://api.projetoaelle.com/1/openmail/u:MDkxNTFhNjliYjAyZTJjZGU2ZWZiZGU5ZjI0NmM5NzcwNGU0Y2FiOQ==">
te...e@t...e.com.br
</a>

Isso pode parecer um pouco trabalhoso, mas na verdade não é, e também, é um caminho seguro para que sistemas automatizados (nem OCRs) descobrirem o seu domínio e seu email para torná-lo alvo de SPAM.

« voltar para a página principal do blog

© 2010 Foco Livre Ag. - Todos os direitos reservados. Powered by WordPress