-
[Sebastian Thrun] Então, qual é a tua opinião sobre a construção de um motor de busca,
-
já criaste um, certo?
-
[Sergey Brin - co-fundador, Google] Sim. Eu acho que a coisa mais importante
-
se fores construir um motor de busca
-
é começar com um corpus (material) extremamente bom.
-
No nosso caso, usámos a world wide web (WWW), que na época era significativamente menor do que é hoje.
-
Mas também era muito nova e excitante.
-
Havia todo o tipo de coisas inesperadas lá.
-
[David Evans] O objectivo para as três primeiras aulas do curso é construir esse corpus.
-
E queremos construir o corpus de nosso motor de busca
-
rastreando a web e é isso o que um "web crawler" faz.
-
Um "web crawler" é um programa que colhe o conteúdo da web.
-
Se pensares numa página web que vês no teu navegador, tens uma página como esta.
-
E vamos usar o sítio da Udacity como página web exemplificativa.
-
Tem muito conteúdo, tem algumas imagens, tem algum texto.
-
Tudo isto entra no teu navegador quando solicitas a página.
-
O importante é que tem ligações (links).
-
E uma ligação é algo que te leva para outra página.
-
Portanto, temos uma ligação para as perguntas frequentes,
-
temos uma ligação para a página do CS 101.
-
Existem outras ligações na página.
-
E essa ligação pode aparecer no teu navegador sublinhada,
-
ou não, dependendo das preferências que escolheste para o navegador.
-
Mas o importante,
-
é que a ligação aponta para uma outra página web.
-
E essas outras páginas, poderão também ter ligações,
-
portanto, temos outra ligação nesta página.
-
Talvez seja para o meu nome, poderás visitar a minha página.
-
E todas as páginas que podemos encontrar com o nosso web crawler
-
são encontradas seguindo as ligações.
-
Não encontraremos necessariamente todas as páginas na web.
-
Se começarmos com uma boa página-semente,
-
iremos encontrar muitas outras páginas.
-
E o que o crawler vai fazer é, a partir de uma única página,
-
encontrar todas as ligações dessa página, segui-las para encontrar outras páginas
-
e, em seguida, nessas outras páginas seguirá as respectivas ligações
-
para encontrar outras páginas e haverão muitas mais ligações nessas páginas.
-
E eventualmente vamos ter uma colecção de muitas páginas da web.
-
Portanto é isso que queremos fazer para construir um web crawler.
-
Queremos encontrar uma maneira de começar por uma página-semente,
-
extrair as ligações dessa página,
-
seguir as ligações para outras páginas,
-
em seguida recolher as ligações nessas outras páginas,
-
segui-las, recolher isto tudo.
-
Parece muita coisa para fazer.
-
Não iremos cobrir tudo isto nesta primeira aula.
-
O que vamos fazer, nesta primeira aula, é extrair apenas uma ligação.
-
Por isso vamos começar com um monte de texto.
-
Nele vai existir uma ligação com uma URL.
-
O que nós queremos encontrar é essa URL,
-
de forma a podermos seguir para a próxima página.
-
O objectivo para a segunda aula,
-
é ser capaz de continuar este processo.
-
Se houver muitas ligações numa página, quererás ser capaz de encontrá-las todas.
-
E é isso que vamos fazer na aula 2,
-
descobrir como continuar para extrair todas essas ligações.
-
Bem, na terceira aula, queremos ir além de uma única página.
-
Assim, até o final da aula dois poderemos apresentar todas as ligações duma página.
-
Na aula 3 queremos colher todas essas ligações, para que possamos continuar,
-
fazendo com que o nosso crawler colha muitas, muitas páginas.
-
Assim, no final da aula três teremos construido um web crawler.
-
Teremos uma forma de construir o nosso corpus.
-
Em seguida, nas restantes três aulas veremos como responder realmente a consultas.
-
Assim na aula quatro, iremos descobrir como dar uma boa resposta.
-
Se pesquisares um termo no motor, vais querer como resposta uma lista com as páginas
-
onde esse termo aparece.
-
Iremos descobrir na aula cinco como fazer isso, de forma adaptável, se tivermos um corpus grande.
-
E, em seguida, na aula seis o que queremos fazer é não apenas obter uma lista,
-
mas sim encontrar a melhor página.
-
Portanto iremos descobrir como classificar todas as páginas onde o termo aparece.
-
Mas, estamos a pôr a carroça à frente dos bois,
-
porque o que vamos fazer na aula um,
-
é apenas descobrir como extrair uma ligação da página.
-
E o motor de busca que vamos construir no fim
-
será um motor de busca funcional.
-
Terá os principais componentes que um motor de busca como o Google possui.
-
Certamente não será tão poderoso como o Google,
-
queremos manter as coisas simples.
-
Queremos escrever apenas um pequeno número de linhas de código.
-
E devemos lembrar-nos que nosso real objectivo
-
não é tanto construir um motor de busca,
-
mas sim usar a construção do motor como um veículo
-
para aprender matéria de ciências informáticas
-
e aprender programação,
-
assim, o que aprendermos fazendo isto,
-
permitir-nos-á resolver um montão de outros problemas.