Your SlideShare is downloading. ×
WebCrawling Utilizando PHP
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

WebCrawling Utilizando PHP

2,973
views

Published on

Como capturar páginas e reconhecer padrões utilizando PHP. Como construir webcrawlers e obter informações da web utilizando php, processamento paralelo com pcntl, módulo curl e expressões regulares.

Como capturar páginas e reconhecer padrões utilizando PHP. Como construir webcrawlers e obter informações da web utilizando php, processamento paralelo com pcntl, módulo curl e expressões regulares.

Published in: Technology

4 Comments
5 Likes
Statistics
Notes
  • Rafael, eu utilizo pcntl no linux, até onde eu sei no windows não funciona (lembro que pesquisei sobre isso, não sei se já conseguiram fazer funcionar). Mas todas as execuções do pcntl são feitas pelo console, nada de webservers.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Bom Rodrigo, estava procurando informações sobre o PCNTL no google, e acabei achando esse post (?).
    Gostaria de saber qual SO você esta usando, e se usa algum WebServer que tenha o PCNTL, estou procurando algum, para o windows, que tenha essa extensão à algum tempo, mas até agora nada.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Oi Alexsandro, utilizo pcntl para fazer processamento paralelo e acelerar o processo de crawling, reconhecimento dos padrões e a persistência dos dados.

    Até mais!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Ola Rodrigo, muito boa apresentação, parabens gostei muito e estou com uma dúvida.
    Por que o uso de pcntl?

    Obrigado
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
2,973
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
52
Comments
4
Likes
5
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Apresentação E u Rodrigo de Sales da Silva • Bacharel em Ciência da Computação • MBA em Tecnologia da Informação • webdev@mestreseo • sysadmin@mestreseo • webcrawling • data mining • reconhecimento de padrões • data mining
  • 2. Objetivo Encontrar Informação
  • 3. Motivação • Como monitorar seu concorrente? • Atualizações em agregadores de notícias? • Pretende automatizar procedimentos? • Verificar posições em mecanismos de busca?
  • 4. Oque fazer? Requisiçã o HTTP Parsing dos dados cURL regexp
  • 5. Protocolo HTTP http://www.w3.org/Protocols/rfc2616/rfc2616.html The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. HTTP has been in use by the World-Wide Web global information initiative since 1990.
  • 6. Protocolo HTTP The HTTP protocol is a request/response protoco 1.4 Overall Operation
  • 7. Client URL Library - cURL • http • https • ftp • gopher • telnet • dict • file • ldap Todas as funções foram adicionadas no PHP 4.0.2
  • 8. cURL - Começando
  • 9. cURL - obtendo o retorno
  • 10. cURL - header
  • 11. cURL - redirects
  • 12. cURL - timeout
  • 13. cURL - SSL
  • 14. cURL - user-agent getUserAgent() == http://www.user-agents.org
  • 15. cURL - proxies proxy4free.com freeproxysite.com Squid
  • 16. cURL - Cookies Obs.: Não esquecer de ajustar as permissões do arquivo.
  • 17. cURL – GET e POST
  • 18. cURL http://us2.php.net/manual/en/function.curl-setopt.php Mais informações:
  • 19. Expressões Regulares • São formas concisas e flexíveis de identificar cadeias de caracteres. (wikipedia.org) • preg_match() • preg_match_all() • preg_split () • preg_grep() • preg_replace() • preg_quote() • preg_filter () • .....
  • 20. regexp • Metacaracteres: a-z, 0-9 • Coringa Ponto: ma. • Lista: [012], [a-z] • Lista Negada: [^0-9] • Opcional: ? • Zero ou mais: * • Um ou mais: + • Quantidades: {n, m} • Inicio de Linha: ^ • Final de Linha: $ • Escape:
  • 21. regexp • Algoritmos Gulosos x Algoritmos Preguiçosos • Grupos: boa-(tarde|noite) • Grupos nomeados: (?P<name>) • Back reference: 1, 2 Mais informações: guia-er.sourceforge.net
  • 22. pcntl – Process Control • Oque é? • Para que serve? • Como funciona?
  • 23. pcntl
  • 24. pcntl • Oque esse código gera? • 1? 2? Nada? Tudo?
  • 25. pcntl
  • 26. pcntl • posix_getpid(); • posix_getppid(); • posix_get_last_error(); php.net/manual/en/ref.posix.php
  • 27. pctl
  • 28. • Praticamente toda informação que necessitamos está disponível na web. • Capturar, entender e armazenar, depende só de você. • As ferramentas estão aí para serem utilizadas. • Perguntas??? Concluindo
  • 29. Obrigado, =)