El problema principal es la extracción manual de información clave desde diferentes formatos de archivos (PDF, imagen, Word, Excel) relacionados con normativas tributarias (ICA). Este proceso manual requiere revisar y extraer secciones específicas, como artículos y normas, para luego trasladar la información a un archivo Excel (matriz) donde se realizan los cálculos de tarifas y porcentajes necesarios para el cumplimiento de la normativa ICA. La información proviene de distintas fuentes, como correos, OneDrive, o descargas de portales, lo que incrementa la complejidad y el tiempo invertido.
Este proyecto tiene como objetivo automatizar la extracción de información clave de diferentes documentos relacionados con normativas tributarias (ICA). Utiliza FastAPI para crear un backend que permite procesar documentos en formatos PDF, imagen, Word y Excel, y extraer datos necesarios para generar una matriz Excel con cálculos de tarifas y porcentajes.
- Backend: Desarrollado en FastAPI para manejar las peticiones y procesar los documentos.
- Base de Datos: MongoDB, para el almacenamiento de datos relacionados con los usuarios y los archivos procesados.
- OCR: Tesseract para la extracción de texto de imágenes y PDFs.
- Procesamiento de Archivos: Utilización de PyMuPDF para PDF y openpyxl para archivos Excel.
Estructura básica del proyecto:
Bintec-2024/
│
├── app/
│ ├── config/
│ ├── models/
│ ├── routers/
│ ├── schemas/
│ ├── services/
│ ├── utils/
│ └── main.py
├── data/
│ ├── municipios/
├── images
├── tests
├── Readme.md
└── requirements.txt
- Python 3.9+
git clone https://github.com/lriveraBanco/Bintec
Seleccionar el proyecto : Moverse al directorio principal
cd Bintec-2024
python3 -m venv venv
Para Linux/MacOS
source venv/bin/activate
En Windows:
venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload
Desde aquí podrias ver la documentación y consumir el API ingresa a la sigueinte url:
http://127.0.0.1:8000/docs
Si quieres consumir el API desde postman solo debes descargar la colección puedes hacerlo desde el siguiente link:
Una vez descargada, puedes importar la colección en Postman y empezar a realizar las solicitudes de la API fácilmente.
Si deseas contribuir a este proyecto, sigue estos pasos:
- Haz un fork del repositorio.
- Crea una nueva rama (
git checkout -b feature-nueva-funcionalidad
). - Realiza tus cambios y haz commit (
git commit -m 'Agrega nueva funcionalidad'
). - Sube los cambios a la rama (
git push origin feature-nueva-funcionalidad
). - Abre un Pull Request.
Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.
Leandro Rivera: [email protected]