Skip to content

A simple resume parser used for extracting information from resumes

License

Notifications You must be signed in to change notification settings

Cefalo/ResumeParser

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ResumeParser

A simple resume parser used for extracting information from resumes

Installation

  • For extracting text from various documents we use pdfminer and docx2text modules. Install them using:
pip install pdfminer        # python 2
pip install pdfminer.six    # python 3
pip install docx2txt
  • For NLP operations we use spacy and nltk. Install them using:
# spaCy
pip install spacy
python -m spacy download en_core_web_sm

# nltk
pip install nltk
python -m nltk nltk.download('words')
  • For extracting other supporting dependencies, execute:
pip install -r resume_parser/requirements.txt

# and then execute
python resume_parser/pre_requisites.py
  • Modify resume_parser/resume_parser/skills.csv as per your requirements

  • Modify Education Degrees as per you requirements in resume_parser/resume_parser/constants.py

  • Place all the resumes that you want to parse in resume_parser/resumes/ directory

  • Run resume_parser/resume_parser/resume_parser.py

CLI

For running the resume extractor you can also use the cli provided

usage: cli.py [-h] [-f FILE] [-d DIRECTORY]

optional arguments:
  -h, --help                            show this help message and exit
  -f FILE, --file FILE                  resume file to be extracted
  -d DIRECTORY, --directory DIRECTORY   directory containing all the resumes to be extracted

For extracting data from a single resume file, use

python resume_parser/cli.py -f <resume_file_path>

For extracting data from several resumes, place them in a directory and then execute

python resume_parser/cli.py -d <resume_directory_path>

GUI

  • Django used
  • Easy extraction and interpretation using GUI
  • For running GUI execute:
python resume_parser/manage.py makemigrations
python resume_parser/manage.py migrate
python resume_parser/manage.py runserver
  • Visit 127.0.0.1 to view the GUI

Working:

Working

Result

The module would return a list of dictionary objects with result as follows:

[
    {
        'education': [('BE', '2014')],
        'email': 'omkarpathak27@gmail.com',
        'mobile_number': '8087996634',
        'name': 'Omkar Pathak',
        'skills': [
            'Flask',
            'Django',
            'Mysql',
            'C',
            'Css',
            'Html',
            'Js',
            'Machine learning',
            'C++',
            'Algorithms',
            'Github',
            'Php',
            'Python',
            'Opencv'
        ]
    }
]

To DO

  • Extracting Experience
  • Extracting Projects
  • Extracting hobbies
  • Extracting universities
  • Extracting month of passing
  • Extracting Awards/ Achievements/ Recognition

References that helped me get here

About

A simple resume parser used for extracting information from resumes

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 86.9%
  • HTML 12.0%
  • Other 1.1%