e galera beleza aqui é nosso canal P ajud nesse vídeo A gente vai ver finalmente a segunda parte dessa série como fazer web scraping observando a rede muitas pessoas me pediram fazer segundo vídeo tá um pouquinho com preguiça um monte coisa para fazer mas agora Finalmente eu tive um pouquinho de tempo eu percebi que muita gente estava com muitos problemas resol ISO teve várias mensagens nosso grupo de de discord monte de comentários Ah não consigo tirar esse lixo aqui atrás essas coisas como vocês estão vendo aqui é bem simples fazer isso demorei agora 15 minutos
para fazer isso nem 10 linhas de Python Ah mais ou menos 10 linhas de p a gente vai escrever gente vocês tem que pensar assim como os dados entram no site então Pet 365 eles sabem como fazer passing desses isso não pode ser difícil Ok então sempre tem que ter um jeito muita gente tentou como redj pelo amor de Deus gente não fazem isso pelo amor de Deus você pode fazer h quando você lá você baixa sei lá uma um poema do Machado de assist quando tem pequenos erros lá lá no meio aqui porque você
usa H errado aí tudo bem Se você usar aqui errado vai perder dinheiro entendeu não faz isso não iso é uma boa ideia se você ainda não tiver assistido a primeira parte assiste Ok bem simples muito simples mas presta atenção quando você assiste porque já várias pessoas no meu grupo não instalaram o certificado corretamente não tá funcionando tá falando de site inseguro aí não instala direito não vai funcionar né você tem que prestar atenção n nessa parte faz exatamente como é fil não vai dar certo olha galera vai ser uma continuação perfeita da última aula
única coisa que a gente vai adicionar isso aqui ok o comando fica igualzinho só vamos adicionar isso aqui bora próxima coisa você vai fazer é baixar o wir Shark eu nem vou mostrar isso agora porque tenho certeza que todo mundo tem instalado você começa Comap scraping a primeira coisa faz é shark e depois você fica desemb você não consegue ler nada porque tá tudo criptografado mas a gente aqui nossa po prox vai resolver isso você baixa instale Ok eu não vou mostrar isso agora germent mostro Mas esse não tá todo mundo já tem instalado e
instalação muito fácil beleza próximo passo você vai deixar o servidor rodar n po prox no fundo abrir aqui uma nova janela vai colocar isso aqui certo beleza E como você já podem ver aqui os dados entram de maneira bem mais agradável né aqui a gente fez aqui como hexum aí tá entrando rapidinho os dados a única coisa que a gente precisa agora fazer e fazer passing dos dados em Python Pronto Olha aqui eu de uma olhada aqui por 15 minutos nem isso 5 minutos ok porque a ideia Sempre você precisa encontrar características que todos os
pacotes tem primeiraa que eu percebi todos otes que informaçõ em pelo menos essa Barrinha aqui não sei como falar pod sei lá barra reta sei lá muitas vezes também tem ainda uma coisa dessa aqui a gente tá vendo aqui tem duas muitos também começam com o v oou li Se não me engano né aqui esse aqui já né Aqui tem uma bobrinha tem outra coisa mas agora mas agora tá bem separadinho né em blocos de TCP tem uma coisa tá vendo isso aqui né esse aqui é Reda Com certeza o Reda também sempre tem isso
aqui é na mesma posição em todos os pacotes també também outra coisa para reconhecer não porque provavelmente você não somente vai fazer passing nesse site aqui sua tarefa é sempre encontrar as simulas que os pacotes que você quer tem n e aqui principalmente isso principalmente isso também geralmente tem o v ou li ou tu ou od obviamente também tem lá dentro né e agora vamos fazer isso rapidinho em Python para você ver como funciona depois você pode fazer filtro mais limpo que eu nessa aula aqui eu uso fazer o passing básico Ok para vocês entenderem
como funciona se vocês quiserem escrevem comentário aí eu também posso fazer vídeo sobre como fazer o passing com não pai a gente vai usar essas informações para fazer o passing mas na verdade seria bem melhor usar isso aqui do lado mas para isso aqui do lado não vai bem mais adequado vamos começar com isso aqui mas por quê olha motivo bem simples estão vendo aqui dois pontos ele tá colocando isso porque tem caracteres que não podem ser impressos pera aí deve ser pera aí S Esse aqui esse aqui 7C n esse aqui vocês podem ver
7C é muito parece muito complicado mas não é nada nada difícil como pai porque pai você sempre pode mudar a visualização e aqui por exemplo 08 não pode ser empresso um caracter que não pode ser impresso só mas por que tão importante porque eu tenho certeza que você pode aqui separar melhor em partes olha aqui 80 15 isso aqui então eles dividem pelo jeito como 80 15 assim Se não me engano a gente também já percebe isso num outro vídeo que realmente desse jeito e também tem outras separações né ah gente par chutar fazendo aquies
web scraping se você quiser fazer bagulho bem profissional você ent l no websocket e ler a documentação você vai descobrir tudo como esses pacotes são separados aqui em cima com certeza também tem uma enumeração vocês também podem descobrir isso hoje não a gente não vai fazer isso como não a gente pode fazer depois tamb vai ser bem mais simples não aqui tem uma enumeração Não parece mas rest decimal garant lá tem uma inação lá dentro num lugar tem você sabe quais pacotes você precisa juntar afinal das contas vamos fazer hoje coisa simples esse aqui do
lado já provavelmente também vai já prestar praticamente qualquer coisa que você que fazer então bora lá vamos para Python beleza a coisa legal é que a gente vai precisar instalar nada a única coisa que a gente precisa hoje é sub process de Python também já FZ vídeo é um dos motivos porque eu adoro Python porque sa process uma maravilha interagir com outros processos eu acho que é uma das bibliotecas que eu sei melhor de Python tem umas coisas que ainda tô fraco S por exemplo não tô muito forte mas S você sei bastante bastante coisa
hoje V aprender umas coisas legais beleza is vamos deixar aberto ok C que a gente vai fechar esse aqui é cont contr C simplesmente Beleza já já vamos começar já com uma função tá tarde aqui esse aqui vamos usar eu vou explicar aqui linha a linha beleza aqui a gente já define uma função se você quiser você pode personalizar um pouquinho pode ter pode colocar aqui uns argumentos como caminho e todos os outros argumentos mas eu tava com preguiça agora deixei esse desse jeito pronto Ah agora é importante is parte importante já demorei para caramba
para descobrir isso Sa mas é muito importante eu uso isso praticamente todos os dias que vou explicar agora para qualquer bte que faz com adb sei lá o qu problema é começar para você problem TR pipes Tod System operal Standard in Standard out stand eror Ok para mandar dados para o subprocess para receber dados para receber erros correto OK agora quando comecei com python meu problema é meu problema foi como eu posso ler na tela e capturar ao mesmo tempo e demorei para caramba para resolver isso para caramba acho que tem vídeo sobre sub process
pois você assiste também explicar agora um pouquinho aqui você tem frequentemente o grande problema de deadlocks deadlock é mais ou menos assim imagina assim esse aqui é um deadlock OK você tem quro quatro caros um cruzamento e cada um desses caros agora tá esperando para outra para outro dia e nada tá acontecendo ess deadlock Ok isso acontece aqui frequentemente tem que tomar muito cuidado com isso Ah então quando eu não preciso mandar dados para processo oub erros eu já desligo com0 aqui como você conhece como de Linux né única coisa que precisa precisa receber agora
dados verdadeiros então colocar aqui Standard out se você precisa dos três como por exemplo no módulo useful adb automação como adb vai deadlock agora vem uma coisa mais genial em Python a gente a gente cria esse processo vai vai tá aberto no fundo certo esse processo rodando lá e vamos capturar os dados e esse como você faz você D nome ok Standard out como a gente tem aqui readline E esse quer dizer esse a gente vai fazer iterativo n disso aí e a gente vai ler até a gente encontrar isso aqui Isso quer dizer final
não tem mais o processo morreu terminou Sei lá o qu OK aí ele vai parar pode ficar tranquilo sempre funciona não par não começa não parece F mas quando não tem nada numa linha Relaxa sempre tem uma coisa New Line o Car mas quando tem isso e final da história e agora a gente vai colocar o maravilhoso yeld em Python quando comecei a aprender Python eu não obviamente não conhecia todas essas coisas yeld decorators list comprehension lambda Eu odiava no começo tudo fala usa isso pelo amor de Deus faz aqui como como você um loop
pronto acabou não tem que ser compreensão de lista hoje eu adoro tudo is Geniais tudo que eu odiava é genial hoje em dia eu amo porque vai fazer isso ele vai retornar essas coisas como generator mas ele vai ficar ainda dentro da função porque a gente tem que analisar bagulho em tempo real certo e não tipo 15 minutos depois né então ele vai fazer aqui um loop e ele sempre vai ah fazer isso eu Seme geralmente coloca isso aqui keyboard on aperto o Control sei ele sai sem bugar entendeu ele já fecha tudo bonitinho aqui
o processo é Tchau ok is germent coloco is é muito importante agora se você fizer isso aqui agora vocês não vai fazer nada ok isso vai só gerar um generator mas ele nem vai começar ainda Ok para fazer alg umaa coisa como isso você tem que realmente pode fazer um loop loop por exemplo P captur Line in olha aqui print isso uma olhada vamos rodar vamos dar uma testada Ah mas tá saindo tudo tá vendo aqui perfeito tudo que a gente precisa olha controle C agora ele bugou ele germent não mosta isso porque quando aperto
aqui e ele quebra meu dedo ainda tá apertando quando ele tá aqui a ele buga ele mosta erro faço realmente assim se você qu Import accept trikes é puro is aqui é a única coisa única situação que realmente faz muito sentido de usar porque agora agora ele vai bloquear qualquer Exception Ok mesmo se eu fico com meu dedo apertando aqui ele não deveria bugar a não se que eu fique apando mais de um segundo per então já tá funcionando OK vamos dar uma olhada Então o que a gente precisa na verdade bem simples cois boa
aqui um novo bloco TCP né TCP é sempre separado que New Line né Windows quando se você estiver fazendo isso agora em Linux ou macos vai ser vai só tem n aqui certo então plano aqui a gente vai verificar se tem aqui uma linha só com New l a gente sabe se começ de noo Bloc vamos collecion linas certo quando a prossima l New a gente vai para lin anterior vamos verri se termina esses dois cares ou um Car se você quiser a gente vi acho uma exceção essor como eu fizesse isso para mim para
tipo apostar em jogos que não vou fazer mas se eu fizesse eu faria como não pai com certeza primeira mais rápido é mais seguro aqui né para não mas olha aqui tá bem bem bonitinho divertido aqui a gente tem ainda esses 0815 aqui ess olha aqui tá vendo aqui dá para ver bem bonitinho aqui aqui Esso aqui 0815 beleza então vamos dar uma olhada como a gente vai fazer isso Ha bora deixa pensar Cap vamos lá Line isso Beleza deixa pensar agora como a gente faz aqui na primeira rodada e a gente coloca já um
dumy aqui dar uma olhada aqui só a gente vai fazer outra lista com good Lines boas linhas nas coisas que a gente quer outcar Ok então a primeira verificação que a gente tem que fazer se a linha tá vazio Ok então esse aqui captur Line vamos lá if captur line agora para não precisar testar isso sabe RN depois Linux n sei lá o que a gente vai aqui inclusive eu sempre tento fica mais tempo possível trabalhando com bites não com Strings mais rápido aí depois no final quando sei esses são meus resultados que eu quero
aí Eu transformo um Strings mais rápido assim bem mais rápido bites Beleza agora mais importante Eh pera aí captur Lines bom a gente colocou um D mas mesmo assim vamos colocar uma verificação porque depois a gente vai limpar ó então precisa ter uma coisa dentro Isso quer dizer precisa ter uma coisa dentro e a última linha que a gente acabou de ver não pode ter nada agora vamos paraa última linha que a gente capturou porque aqui a gente vai fazer uma pent e vamos verificar se a última linha terminou com ponto vírgula e barra ou
só barra como você quiser depois você vê isso como você gosta melhor provavelmente S barra mas tudo bem então vamos lá hum if Cap Lines Men imprimer primeiro B presta mequinho S não presta nada Ah eu sei por a gente esqueceu Com certeza l não sei mas eu acho aqui porque ele vai termina com RN aqui no Windows e Mac o Linux como n não tem não ainda tem nada tem nada para gente é então alguma coisa ainda tá errado ah eu esqueci o pent preciso obviamente anexar não vai dar certo agora só tem uma
tem uma linha vazia lá isso não vai dar certo beleza então H pera aí então ok vamos pensar se se a linha atual não tiver nada então a gente sabe a gente tá no novo bloco mas para a gente agora imprimir a coisa a gente também precisa ter certeza que tem lá uma coisa dentro então vamos vamos tirar isso acho que é melhor só precisa ter uma coisa dentro lá se tiver uma coisa lá dentro a gente vai testar se o último elemento dessa lista tá terminando desse jeito depois de fazer strip se for vamos
imprimir agora se não for o caso se não for o caso a gente vai isso anexar Ok testar de novo Agora foi mas agora tem outro problema olha aqui ele vai encher agora que cada vez maior vamos resolver isso então depois de imprimir depois de imprimir tudo a gente vai limpar essa lista isso essa lista aqui então esse vai a gente vai imprimir tudo certo e quando tiver tudo na tela vamos aqui fazer um Clear vou te uma dica quando você faz isso você define lista lá fora faz um cliar fica mais rápido seu código
porque ele reserva memória já ele não solta mais a memória que ele reservou eu acho pelo menos eu sei verdade eu sei mas eu não sei se para qualquer quantidade de de itens mas vocêe vai fazer seu código mais rápido usa sempre a mesma lista Beleza então vamos fazer de novo ok tá já bem melhor muito bem D recomeçando Tá certo só agora parece que quiser uma só né mas tá certo eu acho pelo menos controle C porque ele ainda and fazendo isso aqui interrup ainda dá ainda tem um problema aqui mas tudo bem Ah
ele tá agora pegando aqui Ok coloc keyboard in keyb interup belza Ok F Pina form aqui olha a gente vai fazer aqui um strip tirar isso aqui e esses são 16 16 carates Ok vamos vamos deixar um pouquinho mais pontinho aqui então a gente vai fazer print a gente vai fazer para ficar um pouquinho mais rápido vamos fazer se você quiser se você quiser acelerar Python muito também tem os novos vídeos como como eu junto o Zig Zig Glen com python Incrível essa linguagem muito rápido e agora a gente vai fazer um strip e a
gente vai pegar 16 16 últimos e vamos fazer deode agora agora a gente pode porque esses talos não queremos jogar fora eu acho pelo menos dá uma olhada perfeito muito bem OK agora pode tirar ol a gente viu praticamente todos os pacotes tem ISO a gente também vai descobrir depois mais facilmente in numeração também pode usar scap cuidado no scrape scap Ok para fazer passing de de pacote TCP também funciona vamos fazer uma coisa mais simples aqui ya po pode pcar um pouquinho vamos clocar aqui end vamos clocar e lá gente acabar vamos faz mais
pronto não aí dear um pouquinho s n e ess aqui vamos depois analizar com L pai porque obviamente você tá vendo aqui esse não é mais bagunça aqui tem uma estrutura Clara entendeu eu fiz aqui para Ah eu já fiz umas formatações né você viu na introdução tá um pouquinho mais bonito né já tirei umas coisas mas acho que chega agora dar aula 15 20 minutos mais ou menos e na aula de depois como nampa a gente vai fazer mais porque nampa é bem mais poderoso para faz fazer isso mas você já pode pincar um
pouquinho agora realmente não não é difícil e depois se você quiser fazer análise de dados e também também já uma limpe tambm já mostrei você pode assistir esse vídeo porque eu uso praticamente os mesmos dados que a gente obteve hoje agora começa raspar a gente observar a rede Ah e e a formatação praticamente vai ser igual se você Assiste esse vídeo como seus novos dados também já pode deixar tudo tão bonitinho aqui arrumar Beleza então muito obrigado por assistir essa aula Espero que tenha gostado escreve um comentário a gente vaier na próxima aula provavelmente vou
fazer anlise rapidinho eu amo asse os novos vídeos fiz muito rápido M Lou na próxima aula uma boa ideia até n tchau