Este projeto empodera quem deseja processar dados no contexto do Querido Diário e realizar suas próprias análises.
Project description
Querido Diário Toolbox
O objetivo da querido-diario-toolbox
é dar à comunidade do Querido Diário
o ferramental para executar suas próprias análises e manipulações com os dados
que são obtidos pelo QD. Além disso, a biblioteca também será
integrada nas aplicações utilizadas em produção pelo Querido Diário. Ou seja,
quem utilizar a biblioteca poderá reproduzir localmente as mesmas etapas de
processamento que o QD realiza.
A biblioteca dá diferentes níveis de abstrações para trabalhar com os dados. Desde uma simples limpeza de texto a partir de strings até conversão de arquivos de vários formatos para texto puro.
Instalação
$ pip install querido-diario-toolbox
Atualmente, a querido-diario-toolbox
é compatível com Python 3.8+.
Para executar extrações de texto é necessário ter o
Tesseract OCR instalado. Assim como
ter os .jar
do
Apache Tika (última versão testada: 1.24.1)
e Tabula (última versão
testada: v1.0.4)
acessíveis para poder passar seus caminhos de arquivo como argumentos.
Exemplos de uso
Exemplos mais elaborados estão disponíveis na pasta
./examples
. Você pode visualizá-los (e interagir se desejar)
utilizando notebooks Jupyter.
Removendo espaços desnecessários em um texto
In [1]: from querido_diario_toolbox.process.text_process import remove_breaks
In [2]: texto = "\n\n\nEste texto tem vários espaços em branco\n\n \ndesnecessários.\n"
In [3]: remove_breaks(texto)
Out[3]: 'Este texto tem vários espaços em branco desnecessários.'
Encontrando CNPJs válidos em um texto
In [1]: from querido_diario_toolbox.process.edition_process import extract_and_validate_cnpj
In [2]: texto = "As empresas de CNPJ válidos 00.000.000/0001-91 e 00.360.305/0001-04 existem mas a de CNPJ 12.123.123
...: /1234.12 não existe..."
In [3]: extract_and_validate_cnpj(texto)
Out[3]: ['00.000.000/0001-91', '00.360.305/0001-04']
Convertendo arquivo de formato fechado para texto puro e extraindo metadados
In [1]: from querido_diario_toolbox import Gazette
...: from querido_diario_toolbox.etl.text_extractor import create_text_extractor
In [2]: config = {"apache_tika_jar": "caminho/apache/tika/jar/tika-app-1.24.1.jar"}
...: extrator = create_text_extractor(config)
In [3]: diario = Gazette(filepath="caminho/diario/fechado/diario.pdf")
In [4]: extrator.extract_text(diario)
...: extrator.extract_metadata(diario)
...: extrator.load_content(diario)
Após a execução de extrator.load_content(diario)
, dois arquivos (um .txt
com o texto puro e um .json
com os metadados) serão criados.
Colaborando
Para saber como colaborar com o projeto, seja através de Issues, Pull Requests ou interagindo com a comunidade, leia o documento de colaboração geral do Querido Diário e depois leia o documento de colaboração específico deste repositório.
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
Built Distribution
Hashes for querido-diario-toolbox-0.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c15130b215327eeeca19099bd831d45cc30d4d301149fe567af39f43d81bc63 |
|
MD5 | 59e34339414607e26b287ed57ce15779 |
|
BLAKE2b-256 | 473981e98de5452d7ab7d9d53455d91df37a960095a11c60ffa67b1652974439 |
Hashes for querido_diario_toolbox-0.2.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b71df104d063e63fba71b40d4e0c3e700d4283fa33175df00937c0722c80626 |
|
MD5 | f14a6cda57215948a023238c85fde47a |
|
BLAKE2b-256 | 41d505f38624dfd25ceff88ccae65b9d04c5c0df60c065e5930fd43d2a02e530 |