Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Noções de Search Engine

1,372 views

Published on

Estes slides oferecem uma introdução ao conceito de Máquinas de Busca e seu "coração", os Web Crawlers. É uma apresentação de 10 min., então não esperem nada de outro mundo. Dá apenas uma noção inicial.

  • Be the first to comment

Noções de Search Engine

  1. 1. No¸˜o de Search Engine ca Cadˆ o “Cadˆ?” e e Douglas Sandy Bonaf´ e Universidade Federal de Itajub´ - UNIFEI a IESTI 16-10-2012Douglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 1 / 14
  2. 2. ¿Qui´n soy yo? e Aluno de Engenharia da Computa¸˜o, pesquiso na ´rea de ca a Microeletrˆnica, metido a falar de mat´rias da ´rea de humanas como o e a Filosofia, Sociologia, Hist´ria, Teologia... Curto pocker, fazemos festas o medievais, churras, programas malucos, etc. Figure: Um aventureiro maluco!!!Douglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 2 / 14
  3. 3. O que ´ uma Search Engine??? e Uma Search Engine, ou motor de busca em nossa l´ ıngua mater (-hehe) ´e um sistema de software projetado para encontrar informa¸˜es armazenadas co em um sistema computacional a partir de keywords. Mais corretamente se distingue as Search Engine das bases de dados, pela diferen¸a que as S.E. c utilizam o conceito de Web Crawlers enquanto sites como o “Cadˆ?” e apenas faziam uma query dentro da pr´pria base. Podemos estruturar a o Search Engine em trˆs funcionalidades b´sicas: e a Web Crawling Indexa¸˜o ca BuscaDouglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 3 / 14
  4. 4. Web Crawler - Rastreador Figure: Darei uma no¸˜o inicial Web Crawler nesses 10 min. caDouglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 4 / 14
  5. 5. Web Crawler - Rastreador Um web crawler ´ um programa que coleta conte´do da rede mundial de e u computadores (www). Ele navega pela web de uma forma met´dica eo automatizada. Em outras palavras, ele ´ um “robˆ” que monta uma e o ´rvore das p´ginas e encontra outras p´ginas iniciando por uma semente e a a a seguindo links para encontrar outras p´gias, e continua seguindo links a dentro destas p´ginas encontradas, encontrando novas p´ginas e assim por a a diante.Douglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 5 / 14
  6. 6. Web Crawler - Rastreador Figure: Vis˜o Gr´fica de um Web Crawler a aDouglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 6 / 14
  7. 7. Alguns Web Crawlers DataparkSearch - mais usado para sistemas locais e intranet; Wget - programa OpenSource usado para recuperar arquivos usando os protocolos HTTP, HTTPS, FTP; Roda em linha de comando; nativo na maioria das distribui¸˜es GNU/Linux e pode ser instalado co em qualquer sistema Unix-like j´ sendo tamb´m portado para a e ambientes MS Windows e OpenVMS. JSpider - se define como uma Web Spider Engine (web crawler) altamente configur´vel e customiz´vel 100 % JAVA a a Yahoo!Slurp - web crawler da Yahoo! Googlebot - web crawler da GoogleDouglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 7 / 14
  8. 8. Chega de Papo! Quero ver c´digo! o Primeiramente, que linguagem usar? Particularmente, recomendo Python! ´ a E pr´tica, sem stress, tipagem dinˆmica, Orientada a Objetos, e todo o a “bla-bla-bla” que vocˆs j´ est˜o cansados de ouvir! Use porque ´ t˜o f´cil e a a e a a quando dar Ctrl+F no seu navegador! O Cora¸˜o da Search Engine ca start_link = page.findAll(’<a href=’)Douglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 8 / 14
  9. 9. Web Crawler - Rastreador Ent˜o vamos ao menos programar um pedacinho dessa Web Crawler... a Primeiramente precisamos entender qual a estrutura de um Web Crawler: Figure: Esquema b´sico de funcionamento de um Web Crawler aDouglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 9 / 14
  10. 10. Chega de Papo! Quero ver c´digo! o Usaremos Python e sua biblioteca urlib2 que faz a conex˜o com os a protocolos HTTP, HTTPS, etc. Um grande problema da WWW chama-se “falta de padr˜o”. Muitos “desenvolvedores” escrevem suas p´ginas web a a mal formatadas (porcamente) e isso dificulta o nosso trabalho. Felizmente isso n˜o ´ problema. Basta usarmos o BeautifulSoup que ´ uma a e e biblioteca Python desenvolvida para projetos de resposta r´pida. Abaixo a segue um c´digo de algo util: um programa que lista todos os links da o ´ p´gina inicial do Google. a Ent˜o a parte de buscar os links fica f´cil! a a import urllib2 from BeautifulSoup import BeautifulSoup url = "http://www.google.com"Douglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 10 / 14
  11. 11. Chega de Papo! Quero ver c´digo! o Ent˜o a parte de buscar os links fica f´cil! a a request = urllib2.Request(url) response = urllib2.urlopen(request) document = response.read() #normaliza o documento para que o mesmo seja acess´vel v ı soup = BeautifulSoup(document) # retorna uma lista com todos os links do documento links = soup.findAll(’a’) for link in links: print link[’href’]Douglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 11 / 14
  12. 12. And the Oscar goes to... Acreditem http://images.google.com.br/imghp?hl=pt-BR&tab=wi http://video.google.com.br/?hl=pt-BR&tab=wv http://maps.google.com.br/maps?hl=pt-BR&tab=wl http://news.google.com.br/nwshp?hl=pt-BR&tab=wn http://www.orkut.com/Home.aspx?hl=pt-BR&tab=w0 ...Douglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 12 / 14
  13. 13. O Fim... E de tanto me dizerem que eu falo mais de humanas que de Computa¸˜o,ca resolvi criar uma ala de computa¸˜o tamb´m... Est´ no come¸o, com 2 ca e a c artigos (Redes Neurais e Interfaces com Glade), mas aos poucos a coisa vai tomar corpo... Link do “Caf´, Circuitos e Bits”: http://veritatis.x10.mx/eng e Twitter: @dsbonafe Facebook: Douglas Sandy Bonaf´ e E-mail: dsbonafe@unifei.edu.brDouglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 13 / 14
  14. 14. O Fim... Obrigado!Douglas Sandy Bonaf´ (Universidade Federal de Itajub´ No¸˜o de Search Engine e a - UNIFEI IESTI) ca 16-10-2012 14 / 14

×