Skip to main content

Read text or text in images inside a pdf and turn it into string

Project description

Biblioteca Andreo 🌱

Funções atuais:

  • leitura de pdf com textos ou textos em imagens e transformação para string.

Instalação

Utilize a biblioteca pip install andreo1

Dependencias

pip install pdf2image
pip install numpy
pip install pytesseract
pip install opencv-python

Sistema Operacional

Para o bom funcionamento é necessária a instalação do poppler e tesseract.

Windows

Deve-se adicionar ao path os seguintes arquivos

Tesseract Windows x64: Pasta onde fica o tesseract.exe

Tesseract Windows x86

Poppler Windows: pasta /bin

🚨🚨🚨 Apos a instalação dos dois no path o sistema, o Windows deve ser reiniciado !! 🚨🚨🚨

MacOs

Utilizando o HomeBrew execute os comando:

brew install poppler

brew install tesseract

brew install tesseract-lang

Exemplos

  • Função recortaUmaPagina(pdfPath,pagina,aI,aF,lI,lF,mode):

    • pdfPath: String = diretorio completo do arquivo. Ex: '/Users/yourUser/yourFolder/YourPDF.pdf'

    • pagina: Int = o numero da pagina que deseja ler ou verificar os tamanhos. Ex: 0. !! IMPORTANTE !!: A primeira pagina do seu arquivo PDF é a 0

    • aI, aF, lI, e lF: Int = são as coordenadas de corte. Caso não sejam preenchidas a função perguntará o tamanho do recorte

    • mode: String = O modo de uso da função. Para retornar uma string com os tamanhos da imagem use 'definicao', para retornar o texto da area selecionada use: 'recorte'. !! IMPORTANTE !! se não for preenchido, o padrão é recorte\n

    Exemplos

    • andreo.recortaUmaPagina(r'yourFolder/YourPDF.pdf',0,0,800,0,800) = vai retornar o texto escrito no pdf nas cordenadas [0:800:0:800]
    • andreo.recortaUmaPagina(r'yourFolder/YourPDF.pdf',0,'definicao')= vai permitir testar coordenadas diferentes e retorna-la como string
  • Para manipular um PDF, página por página para por exemplo pegar mais de uma informação dela use o código abaixo:

import andreo                                                        
path = r'/Users/yourUser/yourFolder/YourPDF.pdf'                     
pdf = andreo.PdfCutReader(path)
allPages = pdf.allPages()
for page in range(pdf.pagesCount()):
    img = andreo.img.bytes()
    pg = allPages[page]
    pg.save(img, format='png')
    texto1 = pdf.retornaString(pdf.definicao(img.getvalue(), 0, 1500, 0, 1500))
    texto2 = pdf.retornaString(pdf.definicao(img.getvalue(), 10, 244, 0, 60))
img.close()
  • Função leUmaPaginaInteira(pdfPath: str, pagina: int):
    • pdfPath: String = diretorio completo do arquivo. Ex: '/Users/yourUser/yourFolder/YourPDF.pdf'
    • pagina: Int = o numero da pagina que deseja ler ou verificar os tamanhos. Ex: !! IMPORTANTE !!: A primeira pagina do seu arquivo PDF é a 0 Exemplo 1: andreo.PdfCutReader(r'yourFolder/YourPDF.pdf').leUmaPaginaInteira(0)

Author

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

andreo1-0.0.1.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

andreo1-0.0.1-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file andreo1-0.0.1.tar.gz.

File metadata

  • Download URL: andreo1-0.0.1.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.2

File hashes

Hashes for andreo1-0.0.1.tar.gz
Algorithm Hash digest
SHA256 12fa5ba3ac6757376c490c3ce2a4d1067ccc4ad9f6808ec6e4143f78094d3f1c
MD5 06981062d300d6d8d3a3041834cef552
BLAKE2b-256 20d30a0c261d1af3408fc37eeea0d19e99f73dd3efc99089744b3601ea0039b2

See more details on using hashes here.

File details

Details for the file andreo1-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: andreo1-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.2

File hashes

Hashes for andreo1-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 20d975871d236b943c746c32836a875cb12ccc428c05c17428f308062e93c56d
MD5 324ef75ca669503e0116588f0f21eae6
BLAKE2b-256 c76bccb840c87d100d9ac68f1854f92be6c043ebd70838e67f86de1b477ec5ca

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page