Como Ler Tabelas em PDF Usando o Python [Extrair Tabelas de um Arquivo PDF]
ฝัง
- เผยแพร่เมื่อ 30 มิ.ย. 2021
- CLIQUE AQUI PARA SABER MAIS SOBRE O CURSO COMPLETO PYTHON IMPRESSIONADOR:
lp.hashtagtreinamentos.com/es...
PARA BAIXAR O MINICURSO GRATUITO DE ANÁLISE DE DADOS: pages.hashtagtreinamentos.com...
Aqui nos vídeos do canal da Hashtag Programação ensinamos diversas dicas de Python para que você consiga se desenvolver nessa linguagem de programação!
-----------------------------------------------------------------------
► Arquivos Utilizados no Vídeo: pages.hashtagtreinamentos.com...
► Vídeo de Instalação do Jupyter: • Instalando o Jupyter -...
► Vídeo de Introdução ao Pandas no Python: • Introdução ao Pandas n...
-----------------------------------------------------------------------
Caso prefira o vídeo em formato de texto: www.hashtagtreinamentos.com/l...
-----------------------------------------------------------------------
Hashtag Programação
► Inscreva-se em nosso canal: bit.ly/3c0LJQi
► Ative as notificações (clica no sininho)!
► Curta o nosso vídeo!
-----------------------------------------------------------------------
Redes Sociais
► Blog: bit.ly/2MRUZs0
► TH-cam: bit.ly/3c0LJQi
► Instagram: bit.ly/3o6dw42
► Facebook: bit.ly/3qGtaF2
-----------------------------------------------------------------------
Fala Galera! Nessa aula nós vamos te mostrar como ler tabelas em PDF usando Python!
Isso mesmo, a ideia é te ensinar como extrair tabelas de um arquivo PDF! Vamos te mostrar um exemplo prático de como extrair tabelas com Python.
Isso é para facilitar e automatizar algum trabalho que tenha para não ter que puxar as tabelas de forma manual.
Para isso nós vamos utilizar a biblioteca tabula-py no Python e a biblioteca pandas, então se você ainda não está familiarizado com os métodos do pandas nós já deixamos um vídeo explicando tudo o que precisa saber do pandas.
Outro ponto importante é que utilizaremos o Jupyter (temos vídeo aqui no canal também de como instalar) e você precisa ter o Java instalado no seu computador, pois esse método vai utilizar o Java para obter as tabelas.
Por fim vamos te mostrar os resultados dessa extração e os problemas que isso pode ter, pois nem sempre a tabela será extraída da maneira correta, então vamos te mostrar algumas maneiras de tratar quando isso acontecer.
É claro que vamos fazer um breve tratamento de dados utilizando os métodos do pandas, mas você pode ir detalhando e aprofundando mais no vídeo da descrição para aprender mais sobre pandas e esse tratamento de dados!
Agora bora pra aula que tem muito conteúdo!
-----------------------------------------------------------------------
#python #hashtagprogramacao
Fala galera!
Gostou do vídeo? Deixa a sua curtida e se inscreve no canal!
► Para baixar o Minicurso de Python, acesse: pages.hashtagtreinamentos.com/inscricao-minicurso-python-automacao-org?origemurl=hashtag_yt_org_minipython_8eNxZI-3Bxs
► Para baixar os arquivos da aula, acesse: pages.hashtagtreinamentos.com/planilha-1OlynwEow-BR1a6DKGoC-oXxe6O4cD4Ob?origemurl=hashtag_yt_org_planilha_8eNxZI-3Bxs
► Para instalar o Jupyter, acesse: th-cam.com/video/_eK0z5QbpKA/w-d-xo.html
► Blog: bit.ly/2MRUZs0
► TH-cam: bit.ly/3c0LJQi
► Instagram: bit.ly/3o6dw42
► Facebook: bit.ly/3qGtaF2
Uma outra dica além do Lattice e do Guess: podem usar stream=True como argumento do read_pdf() também! Estou indicando isso pois estava com um problema pra extrair uma tabela de uma nota de corretagem e esse stream=True ajudou muito!
muito obrigado pela informação, me ajudou bastante eu usei o guess=False e stream=True juntos
Ac
Isso … usando o stream=True no meu caso foi possível ler o cabeçalho da tabela … vi esse parâmetro na docstring do método.
@@jonathassantos8304 vhbbvvj
@@jpsasvirtual também usei pages = 'all', guess=False, stream=True para leitura de notas de corretagem de opções
Esse Lira é um vidente. Há poucos dias atrás eu estava justamente procurando por formas de ler tabelas em arquivos PDF. Achei justamente o tabula, funcionou muito bem no meu caso! Muito bom Lira 🔮
O ajuste desse parâmetro lettice=true resolveu uma dor de cabeça que eu teria aqui! Obrigado, Lira e equipe Hashtag!
Não é bruxaria...
...é tecnologia!
kkkkkkk
Lira como sempre dando um show de didática.
O cara nasceu para ensinar, tem o dom.
Excelente, Lira. Mais uma grande aula com sua didática de alta qualidade. Muito obrigado por compartilhar.
Lira, você nasceu pra ensinar irmão!
Eu adoro o video do flypbird com python, pois ao contrário de outras linguagens de programação o python é fácil.
Bruxaria isso Aê! 🧙♂️
Lira é foda demais. Não à toa tô fazendo o curso completo com muito afinco. O Python vai me ajudar demais no trabalho. Estou com 10% do curso concluído (em andamento) e já aplicando o Python na prática.
ei vcs são fora de sério !!! muito obrigado pelo conteúdo de qualidade.
show demais essa aula !!! Por isso comprei o curso !
Muito top seus videos... Parabéns..Estou aprendendo muito aqui.
Parabéns! Excelente vídeo. Muito bom conhecer esta biblioteca Tabula.
Excelente mais uma vez, nota 10 moço!
A didática do Lira é muito boa!
Parabéns pela aula! Sensacional!!!
Muito bom!! Show de bola!! Parabéns!!!
Que da hora! Com isso, acho que consigo ler uma nota de corretagem e exportar para o Excel ao invés de fazer o processo manualmente.
moço, você é meu salvadoor, muito obrigada!
Parabéns pelo trabalho meu mano, obrigada, ajudou de mais!!
oi adoro seus videos já estou construindo uma inteligência artificial com python, devido seus ensinamentos
Oi, tenho interesse em aprender a criar inteligências artificiais com Python. Se você puder me ajudar...
Meu objetivo é criar uma assistente virtual, com um banco de dados Online e com API's.
Ela vai poder auxiliar em diversas coisas. Se você puder me falar como você aprendeu essas coisas e me recomendar algumas fontes boas eu agradeço muito
Eu já tenho um conhecimento base de Python, até sei criar uma assistente virtual. Mas quero aprender a criar inteligências artificiais. Queria que ela realmente soubesse pensar e interagir/conversar com o usuário
Oi... Te recomendo tentar uma rede neural(essa informação é melhor explicada no video 1 do projeto Flippy bird do canal hashtag programações) POR EXEMPLO: A inteligência artificial verifica se há algumas determinadas palavras no que você digitou e caso sim manda 20 respostas numeradas diferentes e aleatórias, depois basta você criar um input onde você digitara 3 números das melhores frases que a inteligência artificial construiu e armazena-las em um dicionário ou array exemplo:
Olá tudo bem?
1 sim esta!
2 quem é voce?
3 e um prazer te conhecer
qual a melhor resposta: 1
Irmão, Deus te abençoe sempre, que conteúdo fantástico, um dia gostaria de ter oportunidade de apresentar meu projeto.
Parabéns! Ajudou muito!
Ótimo. Muito obrigado.
Muito obrigada! Me deu esperança de conseguir também! :)
Muito obrigado ajudou muito !
Parabéns Lira, cirurgico como sempre, B.R.U.X.O
Seu conteúdo e o melhor ainda bem que assistir sua propaganda no TH-cam kk
Fala Lira! Primeiramente, parabéns pela excelente semana de intensivão! Abusurdamente bom!!
Estou com um problema pra usar o Tabula, estou recebendo a seguinte mensagem:
AttributeError: module 'tabula' has no attribute 'read_pdf'
Já tentei de tudo!!
Otimo canal e videos excelentes !!
pode ensinar como fazer o mesmo procedimento para vários PDFs ao mesmo tempo?
Obrigado!!!
Muito boa aula.
Por que não usar o VSCode, já que da pra integrar tudo nele sem a necessidade de estarmos instalando um monte de programas?
Excelente!!!
Muito boa essa aula!
Ao praticar me ocorreu uma dúvida, se a tabela vier sem cabeçalho, como faço para incluir?
Brabo demais
e aquele NAM ali em cima da tabela depois do tratamento? tem tabela que eu importo que vem com varios NAN, como que tira isso?
Esse vídeo é para aplaudir de pé!
Parabéns pelo conteúdo!
Muito obrigado! Ficamos muito felizes em poder ajudar com nosso conteúdo! 🙏
Valeu!
isso ai é ouro! '-'
galera, para contribuir:
Stream looks for whitespace between columns, while Lattice looks for boundary lines between columns.
guess, se não me engano, adivinha a área onde está a tabela na página, que é o oposto de você difinir a área usando a opção area.
Lira as vezes no evento intensivão de Pithon a tabela nao abria dei esse feedback em um comentário na aula 1 a tabela ficava toda bugada quando eu tentava calcular o faturamento e quantidade espero um retorno isso até me desanimou pras outras aulas mais baixei elas pra assistir depois
Edit: vendo o seu vídeo agora sera que foi porque não tinha o java
Demais!
Lira o que devo fazer qnd os titulos das colunas não carrega em algumas tabela que peguei do pdf?
e como eu faria pra ele ler um arquivo que é gerado so com tabelas e que pode acontecer de ter menos tabelas no proximo arquivo pdf?
Lira, tudo bem. Como faço quando preciso da tabela mas também de informações fora da tabela, digo no titulo do arquivo, uso o PyPDF2 também? fica pesado, esses pacotes ficam acumulados ou ao sair da função eles descarregam da memoria. Grato
Lira, como faço para salvar o arquivo em xlslx após as modificações ?
Muito bom o video, mas tenho uma duvida. Caso uma linha de valores se torna cabeçalho como resolver??
Boa noite. Como faço para o Python ver uma imagem em uma página na internet é escrever oque tem na imagem ?
Suas aulas são show, parabéns.
Parabens pelo video!! So fiquei com uma dúvida: e para exportar o dataframe em excel? alguem sabe como faz?
Olá. Parabéns pelo video. Você teria alguma dica de como ler a cor da célula em uma tabela que está dentro de um PDF?
Faz um vídeo explicando o pysimpleGUI
Fala Lira, que tal uma aula de Django?
Apoio!
MEU DEUS SEUS LINDÕES DA PORRA VOCÊS FIZERAM MESMO
Funcionou muito bem, mas quando eu gero um .exe a partir do programa com o tabula ele não funciona 🤔
Show! Excelente vídeo, só uma dúvida como converter html para pdf?
chefe, como fazer para extrair os valores de um PDF de NFE?
❤️
João, tu manja de Java também? brabo demais!
Lira, como que podemos saber se tem o java no linux?
Para quem já tentou , é melhor usar o python ou VBA para ler PDFs e extrair tabelas ?
Mesmo seguindo o passo a passo minha tabela não fica bonitinha desse jeito do modo display. Fica no formato de tabela mesmo do python. Sim, eu importei o pandas. Alguém sabe como resolver ou o que é?
Quando a mesma tabela ocupa mais de uma página do PDF, ele considera como outra tabela, quando pula de página. Como fazer ele considerar mesma tabela?
Lira, tem algum vídeo no canal que mostra como exportar estas tabelas extraídas no Python e exportando para o excel?
Oi, eu exportei aquelas duas primeiras planilhas dessa forma:
for i in range(len(lista_tabelas)):
lista_tabelas[i].to_excel('df%d.xlsx'%i)
tenho a mesma duvida
alguem conseguiu resolver?
Lira, ensina a configurar esse 'display(df)' no pycharm/linux. Morro tentando instalar o anaconda no ubunto, mas sempre dá pau. Já tentei configurar o 'display' aqui, mas dá erro. Mór feio printar df sem o display
Muito bom, depois de feito isso, posso exportar pro Excel se eu quiser né isso?
executar o método to_excel.
Exemplo: tabela[indice].to_excel(excel_writer="caminho/nomearquivo.xls")
Consigo usar esses codigo no google colab???
Existe como ler tabelas cujo arquivo pdf esteja como imagem?
ei galera alguem pode me ajudar como que eu faco pra colocar um arquivo pdf quando ele tem senha
o estranho ao tentar usar pelo spyder é que houve a necssidade de declarar a variavel "tabela" como um dataframe antes de rodar o loop..
pelo jupyter realmente não é necessário?
estou tentando pelo vscode
não consigo utilizar o tabula.read_pdf e já vi que na documentação do api tem texto sobre
Estou com um pdf que o tabula não consegue ler de forma alguma.
vlw pelo conteúdo! se puderem fazer um vídeo sobre principais erros do pandas seria bem legal. Fico horas tentando encontrar soluções para coisas como ''AttributeError: 'dict' object has no attribute 'set_index''' e "TypeError: unhashable type: 'slice'". Sinceramente esses erros desanimam, cheguei a pensar em desistir do pandas pq toda hora é uma novidade dessas, travando todo o desenrolar dos projetos.
Show de bola! Mas tenho uma dúvida: em que momento o pandas foi importado???
Marcelo, bom dia, eu costumo importar no começo de tudo, um dos primeiros passos a fazer é importar as bibliotecas. Faça isso no topo, junto com outras bibs. Se importar depois de um texto, só vai valer depois do texto.
As tabelas retornadas pelo tabula já são um objeto pandas, vc pode aplicar os metodo diretamente sobre as tabelas.
Um exemplo: tabela[0].to_csv("caminho/arquivo.csv")
o método to_csv já é um metodo pandas
Nunca consigo fazer nada neste jupyter
soft!!!
e quando a tabela tem mais de uma pagina?
tbm gostaria de saber
import tabula
import pandas as pd
lista_tabelas = tabula.read_pdf("credores1.pdf", pages="3-10")
print(len(lista_tabelas))
for tabela in lista_tabelas:
display(tabela)
é só colocar o Hífen entre a primeira e a ultima página
Lira, tentei juntar duas tabelas que estão dentro do PDF mas não consegui, tem como ?
De duas páginas diferentes**
Pessoal como posso salva o arquivo editado em csv
Procure uma função do pandas.DataFrame chamada "to_csv".
@@regicsf vlw!
dá para usar o TABULA NO google colab
Dá, funciona direitinho.
Lá você precisa instalar com !pip install tabula-py (com essa exclamação no início)
iii o que é anaconda? não manjo
Será que ao invés de eu ler uma tabela em um pdf seria possível eu ler um gráfico? gerar dados através de um gráfico.. contrário do normal! rs