A web-based application that extracts structured information from PDF resumes using Python and machine learning techniques.
- Extracts key information from PDF resumes:
- Name
- Phone number
- Skills
- Work experience
- Web-based interface
- Database storage
- Search functionality by skills
- Docker support for easy deployment
Below are screenshots of the application's user interface:
- Backend: Python, Flask
- Database: SQLite
- PDF Processing: pdfplumber
- Frontend: HTML, Bootstrap
- Containerization: Docker
- Python 3.11+
- Docker (optional)
# Build the Docker image
docker build -t resume-parser .
# Run the container
docker run -it --rm -p 5000:5000 resume-parserAccess the application at: http://localhost:5000
- Clone the repository:
git clone https://github.com/kumarBisho/Resume-Skill-Extractor.git
cd Resume-Skill-Extractor- Create and activate virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Run the application:
python resume_parser.pyAccess the application at: http://localhost:5000
- Upload a PDF resume using the file upload button
- The system will automatically extract:
- Basic information (name, email, phone)
- Skills from predefined categories
- Work experience
- Use the search functionality to find resumes based on specific skills
The system currently supports extracting skills from the following categories:
- Programming languages
- Web development
- Databases
- Cloud technologies
- Tools
- Machine Learning/Artificial Intelligence
- Data Structures and Algorithms
.
├── resume_parser.py # Main application file
├── templates/ # HTML templates
│ └── index.html # Main web interface
├── static/ # Static files (CSS, JS)
├── uploads/ # Directory for uploaded resumes
├── requirements.txt # Python dependencies
├── Dockerfile # Docker configuration
├── .gitignore # Git ignore file
└── README.md # This file
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to the developers of pdfplumber and Flask for their excellent libraries
- Special thanks to the open-source community for their contributions



