6. www.fgsl.eti.br
O que é um robô?
O termo robô tem origem na palavra tcheca
robota, que significa trabalho forçado. O
robô presente no imaginário mundial teve
origem numa peça do dramaturgo Karel
Čapek, na qual existia um autômato com
forma humana, capaz de fazer tudo em lugar
do homem.
Fonte: https://pt.wikipedia.org/wiki/Rob%C3%B4
7. www.fgsl.eti.br
O que é um robô?
Um robô (ou robot) é um dispositivo, ou
grupo de dispositivos, eletromecânicos ou
biomecânicos capazes de realizar
trabalhos de maneira autônoma ou
pré-programada.
Fonte: https://pt.wikipedia.org/wiki/Rob%C3%B4
16. www.fgsl.eti.br
WYSIWWWYK
Fake news
TSE cita notícia falsa sobre notícia falsa para
investigar notícias falsas... (28/03/2018)
“Its like when I'm right I'm right, when I'm wrong I could been right, so
I'm still right cause I coulda been wrong, you know, and I'm sorry cause
I could be wrong right now, I could be wrong, but if I'm right... “ (Bama
in Get Rich or Die Tryin’ (2005))
17. www.fgsl.eti.br
WYSIWWWYK
O que é a verdade?
_Mesmo em sonhos, ninguém vê
toda a verdade.
_Que parte eu vou ver? -
perguntou Aristarco.
_A parte que você consegue ver –
respondeu o mercador de sonhos.
18. www.fgsl.eti.br
Non ducor, duco
Pergunta enviada:
E quando você fala o lema de SP "non
ducor, duco" ("não sou conduzido,
conduzo") , quer dizer o quê? Que os robôs
não podem esperar as informações (nem
formatos pré definidos ) e sim procurar o
que precisa no formato que for necessário?
20. www.fgsl.eti.br
Non ducor, duco
Resposta:
Uma motivação para fazer Data Scrapping
no lugar de usar mecanismos de busca ou
APIs prontas é não se deixar ser
conduzido para o que querem que você
veja, mas que você conduza sua busca
para o que você realmente quer.
21. www.fgsl.eti.br
Captura do código-fonte de
páginas
●
Browsers funcionam sobre o protocolo
HTTP (Hypertext Transfer Protocol).
●
HTTP trata da transferência de texto:
um computador solicita um arquivo de
texto para outro computador e este, se
tiver o arquivo e permissão para isso, o
envia.
22. www.fgsl.eti.br
Captura do código-fonte de
páginas
●
O browser interpreta o texto,
processando HTML, CSS e Javascript
para produzir uma interface rica em
apresentação de conteúdo e interação.
●
O que você vê no browser não é o que
ele recebe.
23. www.fgsl.eti.br
Captura do código-fonte de
páginas
●
A captura de código-fonte de páginas
consiste em obter os arquivos
processados pelos browsers – sem usar
os browsers.
24. www.fgsl.eti.br
Captura da visão do usuário
●
A captura da visão do usuário já consiste
em obter dados da página processada
pelo browser, a partir da simulação da
navegação.
26. www.fgsl.eti.br
Pergunta:
Gostaria de saber o bot mais rápido, e o
que precisa saber na hora de contratar um
servidor que possa fazer várias requisições.
Sua RAM ou CPU? ou algo a mais? Abs.
27. www.fgsl.eti.br
Resposta:
Pra falar sobre comparação de velocidade é
necessário estabelecer critérios de funcionalidade.
Não faz sentido falar em velocidade absoluta se
dois softwares tem objetivos diferentes.
Você precisa estimar o volume de dados que vai
tratar com uma prova de conceito para determinar
uma configuração mínima de máquina. Isso pode
ser feito com sua máquina pessoal.
31. www.fgsl.eti.br
Resposta:
Os que são privados – e por isso tem
restrições de acesso. Este curso é sobre
acesso a dados públicos e não sobre
invasão a dados privados.
32. www.fgsl.eti.br
Pergunta:
Em alguns sites, seja por medida de
segurança, existem algumas exigências
para que a raspagem de dados seja
realizadas com sucesso. Umas dessas
exigência são os cookies. Como podemos
utilizar os cookies e assim conseguir
acessar as informações que desejamos?
35. www.fgsl.eti.br
Resposta:
Javascript pode inserir dados na página
visível a partir de código-fonte invisível
para o usuário ou a partir da resposta à
requisições HTTP assíncronas. Os dois casos
são cobertos pela abordagem de captura
de código fonte de página, que envolve a
exploração de conteúdo de respostas HTTP
em qualquer formato.
41. www.fgsl.eti.br
Resposta:
Essa pergunta parece se referir à exibição
de dados de fontes externas. É possível
fazer scrapping on-line, mas a questão do
real time depende do tratamento dos
dados. Se houver necessidade de
tratamento, haverá um intervalo maior
entre a captura e a exibição.
43. www.fgsl.eti.br
Resposta:
Sim. Há estratégias de alto e baixo desempenho.
Uma de alto desempenho é resolver
antecipadamente um lote de CAPTCHAS e montar
um mapa imagem => solução. Assim, basta
fazer o download da imagem e comparar com a
base para obter a solução. Uma outra de baixo
desempenho é baixar a imagem, tentar fazer o
reconhecimento com software específico e
submeter a possível solução – com risco de
bloqueio por tentativa.
46. www.fgsl.eti.br
Pergunta:
Caso não seja dito na palestra. Gostaria de
saber, se comparado ao mesmo serviço
realizado em python, quais as vantagens e
desvantagem (ou diferenças ) no uso de
php ou python ? Ou seria mais pra manter
o projeto menos multi-linguagem possível.
48. www.fgsl.eti.br
Como é em Python
from requests import get
url = 'http://www.imdb.com/search/title?
release_date=2017&sort=num_votes,desc&page=1'
response = get(url)
print(response.text[:500])
Fonte: https://medium.com/machina-sapiens/raspagem-de-dados-com-
python-e-beautifulsoup-1b1b7019774c
49. www.fgsl.eti.br
Detalhe: precisa de um módulo
O módulo python-requests precisa ser instalado
para que o script anterior funcione.
Em distribuições baseadas em Debian:
sudo apt-get install python-requests
Em distribuições baseadas em Red Hat:
sudo yum install python-requests
50. www.fgsl.eti.br
Como é em PHP
<?php
$url = 'http://www.imdb.com/search/title?
release_date=2017&sort=num_votes,desc&page=1';
$response = file_get_contents($url, false,
stream_context_create(['http' => ['method' => 'get']]));
echo substr($response,0, 500);