How to Parse Resumes by Extracting Metadata from Large Volume of Resumes?

By Naveen Jupeta

A major recruitment and staffing company approached Boolean Data to build a unique solution to process a large volume of incoming resumes every day and extract the metadata and store it in Snowflake to build analytics and ML solutions that can improve their overall operational efficiencies. Boolean team built a Python based Resume Parser that extracts metadata from all incoming resumes and stores them into S3 buckets and further exports into Snowflake.

Automated resume parsing is a highly beneficial tool for streamlining the extraction of data from resumes, allowing recruiters to save significant amounts of time, particularly when handling large volumes of resumes.

For extracting the necessary information from PDF, we used ‘pdftotext’ and for DOCUMENT we used ‘docx2txt’ and stored this extracted information in a container for further use to process using ResumeParser. Some of the packages we used in this entire process are listed below:


Import necessary packages.

import os
from pyreparser import ResumeParser
import pandas as pd
import docx2txt
import PDF2Text
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.metrics.pairwise import cosine_similarity

Read the folder that contains resumes.

Extract the metadata from the resumes by using pyresparser(ResumeParser)

Note: In the below code in place of ‘i’ give your resume path and print it. You’ll get the metadata of resumes. 

Convert the metadata into DataFrame for easy understanding.

Drop unwanted columns and convert Data Frame to CSV.

Give your AWS S3 credentials and upload the csv file to S3 bucket.

Naveen Jupeta

Data Engineer

Boolean Data Systems

Naveen works as a Data Engineer at Boolean Data Systems. He has built many end-to-end ML/DL Data Science solutions. His experience includes working with ML/DL, Snowflake, Matillion, Databricks and Streamlit.


Python-based resume parsers can be a great tool for extracting information from resumes and converting them into a format that can be easily understood. Here, we extracted metadata from the resumes and uploaded it to inexpensive cloud storage AWS S3 bucket. This information can then be used to create a profile of the candidate, which can be used by recruiters and hiring managers to make better-informed decisions. This can be a huge time-saver, especially when dealing with a large number of resumes.

About Boolean Data

Boolean Data Systems is a Snowflake Select Services partner that implements solutions on cloud platforms. we help enterprises make better business decisions with data and solve real-world business analytics and data problems.

Head Quarters

1255 Peachtree Parkway, Suite #4204, Alpharetta, GA 30041, USA.
Ph. : +1 678-261-8899
Fax : (470) 560-3866