no vídeo de hoje sobre extração de dados de uma página HTML e a gente vai utilizar a página dessa matéria aqui do Estadão sobre o placar da eleição para presidente da Câmara dos Deputados essa matéria é uma matéria de 15 de janeiro então ela não é o placar final com o resultado das eleições que ocorrerão no dia de ontem mas não tem nenhum problema porque o foco do nosso vídeo não é o resultado em si Mas como que a gente pode fazer para extrair as informações que estão distribuídas aqui nesse infográfico para a gente poder
fazer a nossa própria visualização de dados com essas mesmas informações o presente projeto ele está dividido em duas partes Então nesse primeiro vídeo a gente vai fazer o processamento dos dados que me permitiram gerar essa visualização aqui e no segundo vídeo que está na quinta-feira a gente vai conversar um pouco mais sobre essa visualização de dados em ser que perfeita utilizando o flash uma ferramenta que eu apresentei no vídeo na semana passada aqui no canal esse projeto Ele nasceu da minha curiosidade sobre esse tema aqui da votação da Câmara dos Deputados mas também porque quando
me deparei com essa matéria eu comecei a me perguntar se as informação aqui ela podia ser acessada de alguma maneira nessa informação que está disposta de maneira visual não não em uma tabela ou algo do tipo e o que eu fiz foi começar a inspecionar o código dessa página não precise todos estão não necessariamente você está familiarizado com isso se você não tá então eu acabo te apresentar né uma funcionalidade nova que todo o navegador tem então em cada ponto que a gente clica aqui com e clique em inspecionar a gente consegue encontrar onde está
aquela informação no código aí você veio aqui não tem o texto a eleição que definirá o sucessor de Rodrigo Maia e etc uma vez que a gente fiquei com esse dado tava na página minha primeira tentativa para extrair essas informações foi utilizar o pacote Wiki quests do Python Então essa aqui é a documentação nesse pacote E aquele dá uma noção rápida já de como a gente pode utilizar eu vou mostrar para vocês Qual foi a minha primeira tentativa que foi pegar a URL daquela matéria do Estadão colocar aqui no único esta é lá e verificar
o que que ele retornava e quando você faz essa extração ele não te entrega o conteúdo inteiro da página embora não tenha funcionado através da aquisição eu não me dei por vencida Resolvi vir aqui direto no código da página usando o inspecionado navegador e encontrei a sessão que abrigava todo o conteúdo do voto dos deputados que esta que chama canção Man então se eu pegar aqui e copiar eu posso copiar o conteúdo desse elemento que alcance também ó e aqui e aí copiando aqui vocês vem que vem todo o código do elemento e aqui tá
juntamente a informação que a gente precisa embora que não esteja dando para decodificar quando eu jogar lá no código gente vai ver próximo passo então foi copiar esse conteúdo em uma string aqui no Python E aí agora a gente vai fazer a utilizar o Bios um pacote do pai foi feito pra gente conseguir fazer extração de informações de uma página HTML como essa que embora não seja página inteira é um trecho de uma página e o bico super vai cair super bem para gente conseguir resolver isso então a gente usa ouvir possuo para fazer um
hdmi1 que a gente passa para ele que a gente vai fazer um fazer html é aquele que pode ver como é que é osso né ele mostra juntamente toda aquela aquele nosso conteúdo e vou voltar aqui para página do navegador para mostrar como que é estrutura que tem que fazer então a gente vai encontrar conversou Sul todas as divisões dessa página HTML que tenha tá clássicas estão representados ela parece aqui várias vezes na quinta às vezes porque o número de deputados e ela corresponde ao conjunto de informações de cada Deputado Então veja que eu tô
selecionando aqui e ele está selecionando aqui pra gente e primeiro Deputado Chiquinho brazão se eu selecionar essa outra vai ter que ele vai andando então cada um desses blocos aqui dessas divisões correr corresponde aos dados de um deputado Então o que a gente faz é pedir para ele encontrar todos os pares ao médico do paintball todas as divisões e quem tem um atributo com classe aquela classe que a gente viu lá então a canção pronto se a gente faz isso ele gera aqui para gente ele pega exatamente todos aqueles elementos que cada um dos deputados
cada linha que representa a um deputado então tem a classe né que é esse cartão representa a escolha então o voto declarado pelo Deputado aí tem uma divisão interna que ele chama de avatar que é quando tem a descrição e a foto do deputado tem um link aqui para aquela imagem que aparece lá só que eu quero fazer é isso aqui é uma lista para quem conseguir identificar aqui é uma lista no peito e cada elemento aqui cada linha é um elemento dessa milita é só tiver aqui que tá separada por vírgulas e com colchetes
uma lista que eu vou fazer aqui é um por porque eu quero inteirar dentro dessa lista cada elemento da sua lista é um deputado então para Deputado em e esse cara que a gente selecionou eu vou criar uma outra lista que vai ser a lista que vai abrigar para mim o resultado e depois que eu pedi a extração a pena das informações que eu quero a primeira informação que eu vou pegar aqui é o deixou só quero saber em quem o deputado declarou botas então quero saber em que o deputado declarou Voto para presidente da
câmara para isso Se eu por exemplo pedir para ele imprimir essa informação Oi gente vai ver que a gente vai ficar só com aquele elemento do voto para cada um deputado Esse é o voto do deputado e vamos comentar aqui para gente continuar vendo as informações que cada Deputado tem né Depois da escolha do voto a gente quer que ele encontre a descrição do deputado que tem o nome o partido estado e a gente também vai pegar esse link aqui só que essa informação ela tá dentro dessa tag aqui de imagem tá vendo Então para
isso a gente faz o seguinte a gente pega informação da tag imagem esse aqui é o voto dentro da tag imagem então ele tem que fazer deputado.mg e a gente passa para ele a classe dentro da tag ia me ver imagem né aqui pra gente pegar esse alto que a descrição da imagem vai vir o nome aqui ficou um cargo de cada deputado bom então a gente tem aqui o nome e na verdade eu vou chamar de dados Deputado porque você é mais uma informação Ah e eu também vou pegar a imagem do deputado a
foto né que tá nesse link aqui dentro desse sócio então a gente pega esse mesmo cara aqui só que a gente pede o sócio 1 é só que tem uma coisa esse dado Deputado aqui ele tá com um monte de informação dentro dele né Tem o nome de o cargo não é o nome o partido e o Estado então que eu vou fazer é utilizar aqui uma expressão regular para filtrar as informações que estão dentro desse cara para poder usar a expressão regular eu tenho que importar que o pacote né regular Expression no módulo bom
então assim como a gente humano consegue identificar esse padrão é com esse modo de expressão regulares que a gente quer que o computador também conseguir entender e a gente usa para isso uma gramática uma anotação para indicar para ele como é esse padrão que a gente quer que ele encontra bom então aqui a gente tem inicialmente e esse ponto* federal esse cara aqui ele está representando todo esse trecho que que vem no início Então vem Deputado espaço federal quando eu boto o ponto* eu tô representando todos os caracteres aqui. Significa qualquer caractere* múltiplas vezes então
não importa que vem antes aqui vem o Federal depois um espaço e aí vem um nome depois vem algo entre parênteses que tem um formato de caracter traço caracteres isso exatamente que eu tô colocando aqui o que é interessante aqui se a gente coloca parênteses para identificar esses elementos aqui então aqui por exemplo tem um ponto alto risco tá fora de um parênteses e aqui ele tá dentro porque eu quero que ele entenda que isso é um grupo então eu quero que ele recupere para mim essa informação que tá nesse meio que é exatamente o
nome do deputado Depois eu falo para ele identificar um parênteses um traço algo o irmão se você não entende expressão regular não tem nenhum problema assim isso pode parecer um Bicho de Sete Cabeças no início mas não é é até bastante simples né porque tem esses padrões e eu vou mostrar aqui eu vou mostrar aqui que a gente consegue recuperar justamente essas essas informações por grupos e o que ele pega justamente é para cada um né dessas lindas aqui dos deputados ele tá pegando o nome o partido o estado exatamente isso que eu queria fazer
ao invés de dar um homem uma variável para cada um desses caras eu vou colocar todos eles numa lista ó e vou sair adicionando essa informação dentro dessa lista e aqui um cria uma lista com a informação de um deputado eu vou adicionar essa lista dentro da nossa lista final que a lista de votos porque o que me interessa é ter uma lista de listas e e quando você procura mais e deu um pequeno erro aqui faltou fechar o parênteses do aprende e tem que tirar essa atribuição é a dança a gente vê a gente
pediu para visualizar Nossa lista de votos a gente tem aqui o voto a informação sobre o voto ou não informação é a que a gente tem um não quis responder mas então o candidato que vai ser votado para presidência o nome do deputado o partido o estado e assim formação da imagem dele E com isso a gente vai criar um deita frame do pandas Então vou importar que o pandas bom então é isso a gente vai criar e não aceita frame A partir dessa lista que a gente acabou de criar e o que a gente
passa para ele aqui é o nome Qual é o nome das colunas Então a primeira coluna é o voto a segunda coluna é o nome do deputado quem é o deputado a terceira coluna é mas eu partido a quarta coluna vai ser o estado e a quinta coluna é a imagem do deputado eu vou botar por padrão aqui tudo minúsculo que não é cosa que te ver as colunas também Oi e aí a gente acabou de criar um nosso deitar frame com as informações dos votos dos Deputados é bom aqui a gente já sabe que
com isso a gente consegue fazer muitas visualizações né a gente pode fazer gráficos interessantes aqui mesmo com o pandas dentro do nosso Google colab então por exemplo a gente consegue fazer um histograma dos votos E ai que a visualização também ruim mas eu não vou perder tempo me atendendo a essa personalização desse gráfico o próximo alisar o que eu vou fazer eu vou guardar esse informações né porque como eu vou precisar utilizar elas fora aqui do panda cê do colégio eles ambiente eu vou reportar Estreita prêmio para um certo e ver que a gente passa
aqui uma Flag para ele dizendo que a gente Windows é falso porque a gente não quer que ele escreva esse cara aqui que é o índice do nosso deitar frame com uma coluna nos nossos dados a gente rodar essa linha a gente vê que o colégio gera esse arquivo aqui pra gente e a gente consegue fazer o download com o valor dos nossos lados feitos o próximo passo é a gente fazer a visualização Mas isso é que a gente vai fazer no próximo vídeo se você gostou desse vídeo em que eu utilizei vários módulos do
pai tão para conseguir fazer essa extração de dados deixe seu like Não esquece de se inscrever no canal para receber notificação do próximo vídeo da visualização de dados muito obrigada e até a próxima E aí E aí [Música]