Convert PDF documents to Excel spreadsheets with ease. Excel-It intelligently extracts tables and text from PDFs using advanced table detection and OCR capabilities.
- 🎯 Smart Table Detection - Automatically extracts tables from PDF documents
- 📄 Multi-Method Extraction - Uses camelot, pdfplumber, and OCR for maximum compatibility
- 🔄 Fallback Pipeline - Seamlessly switches between extraction methods if one fails
- 📊 Excel Export - Converts extracted tables to formatted Excel spreadsheets
- 🚀 Easy to Use - Simple API with minimal configuration required
- PDF Processing: Camelot, pdfplumber
- OCR: Tesseract, pytesseract
- Data Processing: Pandas
- Excel Export: openpyxl
- Image Processing: OpenCV, Pillow
Before installation, ensure you have:
- Python 3.8 or higher
- Tesseract OCR (for OCR functionality)
- Download the installer from here
- Run the installer and follow the setup wizard
- Note the installation path (default:
C:\Program Files\Tesseract-OCR)
brew install tesseractsudo apt-get install tesseract-ocr-
Clone the repository
git clone https://github.com/rachit404/excel-it.git cd excel-it -
Create a virtual environment (recommended)
# On Windows python -m venv venv venv\Scripts\activate # On macOS/Linux python3 -m venv venv source venv/bin/activate
-
Install dependencies
pip install -r requirements.txt
-
Configure Tesseract path (Windows only)
If you installed Tesseract to a non-default location, edit
main.pyand add:import pytesseract pytesseract.pytesseract.pytesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
- Place your PDF file in the
input/folder - Update the filename in
main.py:PDF_FILE = "input/your_file.pdf"
- Run the script:
python main.py
- Find your Excel file in the
output/folder
from src.extract_tables import extract_tables
from src.export_excel import export_tables
# Extract tables from PDF
tables = extract_tables("input/document.pdf")
# Export to Excel
export_tables(tables, "output/result.xlsx")excel-it/
├── main.py # Entry point
├── requirements.txt # Python dependencies
├── README.md # This file
├── input/ # Place PDF files here
├── output/ # Extracted Excel files saved here
└── src/
├── extract_tables.py # Table extraction module
├── pdf_utils.py # PDF utility functions
├── ocr_pipeline.py # OCR processing pipeline
└── export_excel.py # Excel export functionality
Excel-It uses a three-tier extraction pipeline:
- Camelot-Based Detection - First attempts to extract tables using advanced table detection
- Text-Based Extraction - Falls back to pdfplumber for text-based PDFs
- OCR Processing - Uses Tesseract OCR as a final fallback for scanned documents
This ensures maximum compatibility with various PDF formats and quality.
- Windows: Verify Tesseract is installed and update the path in
main.py - macOS/Linux: Run
which tesseractto verify installation
- Ensure your PDF contains structured tables
- Check PDF file format and quality
- For scanned PDFs, OCR will be used automatically
- Verify virtual environment is activated
- Run
pip install -r requirements.txtagain
Contributions are welcome! Feel free to:
- Report bugs
- Suggest features
- Submit pull requests
This project is licensed under the MIT License - see LICENSE file for details.
For issues, questions, or feedback, please open an issue on GitHub.
Made with ❤️ by rachit404