Programação para Internet I 10. Motores de busca Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt
A Internet assume-se como a maior fonte de informação de todos os tempos No entanto, a informação encontra-se muito dispersa... Para nos ajudar a encontrar a informação pretendida podemos recorrer a motores de busca (search engines) Um search engine mais não é do que uma página web especial! (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 2
Existem diversos search engines, no entanto, todos têm características comuns: Permitem procurar na World Wide Web (partes dela) com base em palavras chave Têm um índice de palavras chave, assim como o local onde podem ser encontradas essas palavras (os sites) Os motores de busca de hoje em dia criam os índices automaticamente, antigamente, o que existiam eram serviços de apontadores! (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 3
Construção dos índices Para que se possam efectuar pesquisas, é necessário que a informação esteja indexada. Hoje em dia os índices são construídos graças a software especial : spiders Ao processo de construção dos índices dá-se o nome de web crawling. Para se conseguir ter um índice que permita obter bons resultados nas pesquisas, é necessário analisar muitas páginas web Actualmente o google indexa 8,058,044,651 web sites. (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 4
Construção dos índices (cont.) Qual o ponto de partida das indexações? Usualmente o ponto de partida são servidores com elevada carga, ou web sites com grande número de visitantes Começa-se por indexar a página principal de determinado site e em seguida, são seguidos todos os links aí existentes e analisadas as páginas a que eles conduzem. O processo repete-se vezes sem conta... (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 5
Construção dos índices (cont.) Os índices são geralmente guardados na forma de hash table Um conjunto de informação encontra-se associada a uma determinada chave de hash (uma palavra) que irá determinar de forma muito rápida onde se encontra a informação que pretendemos encontrar Esse conjunto de informação envolve normalmente: O URL da página onde a palavra ocorre O número de vezes que a palavra ocorre nessa página etc. Associados aos objectos ligados às palavras encontram-se pesos, cujo valor é calculado com base no local onde as palavras ocorrem, o número de vezes que ocorrem (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 6
Construção dos índices (cont.) (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 7
Meta-tags Permitem que os donos das páginas especifiquem determinadas palavras chave e conceitos sobre as quais as páginas serão indexadas pelos motores de pesquisa. São muito úteis em situações em que as palavras contidas no conteúdo das páginas possam ter mais do que um sentido. Ex.: Banco, peça de mobiliário e banco entidade bancária. <head> <Meta Name="Description" Content= O melhor site do mundo sobre carros"> <Meta Name="keywords" Content= carros, corridas, automóveis, válvulas, cavalos, potência, cilindrada"> </head> (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 8
Caso de estudo: Google Começou como um projecto académico O sistema inicial já permitia usar múltiplos spiders em simultâneo (3) Cada spider conseguia ter até 300 ligações para páginas web abertas em simultâneo Este sistema conseguia indexar cerca de 300 páginas por segundo, produzindo cerca de 600 kb de informação (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 9
Caso de estudo: Google (cont.) Quando o google abre uma página para indexar, olha para: As palavras contidas na página O local onde essas palavras ocorrem O google está preparado para excluir das indexações artigos ( the, an, a, etc.), principalmente por razões de velocidade de indexação e posterior pesquisa Por vezes recorre-se a meta-tags para apoiar a indexação (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 10
As pesquisas Nas pesquisas podem geralmente usar-se operadores booleanos (AND, OR, NOT) Podem usar-se aspas para tornar as pesquisas mais especificas O google permite fazer mais mil e uma coisas (existe um livro na biblioteca dedicado exclusivamente a este motor de busca) (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 11
O que fazer para aparecer nos primeiros lugares (aumentar o page rank) Acima de tudo escrever conteúdos de qualidade que interessem ao maior número de pessoas Fazer ligações do nosso site para outros sites importantes (esperar que os outros façam o mesmo!) Divulgar o nosso site em blogs, foruns, etc. (colocando o endereço na assinatura, por exemplo) cuidado com o SPAM! Dar nomes elucidativos aos ficheiros Dar títulos elucidativos às páginas Fazer uso das meta-tags (keywords, discription, etc ). (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 12
O que fazer para aparecer nos primeiros lugares (aumentar o page rank) Efectivamente não é muito fácil aumentar de um dia para o outro o pagerank de uma página, mas há de facto uma série de factores que podem ser tidos em conta http://www.vaughns-1-pagers.com/internet/google-rankingfactors.htm http://www.google.com/support/webmasters/bin/answer.py?hl =en&answer=35769 (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 13
O futuro Pesquisas de conceitos Pesquisas por pedaços de imagens, trechos de música, video, etc. Pesquisas em função do contexto (local, data/hora, actividade, identidade, ) (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 14
Alguns motores de busca http://www.google.com http://www.altavista.com http://www.go.com http://search.com http://www.hotbot.com http://www.lycos.com http://www.tumba.pt http://www.sapo.pt http://www.bing.com/ (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 15
Mais informações http://www.searchengineshowdown.com http://searchenginewatch.com (c) Nuno Miguel Gil Fonseca - Escola Superior de Tecnologia e Gestão de Oliveira do Hospital - Programação para Internet I 16