Initial commit
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
import pdfreader
|
||||
import textdistance
|
||||
from pdfreader import PDFDocument, SimplePDFViewer
|
||||
|
||||
# Preparing resume parsing
|
||||
file_name = "example_resume.pdf"
|
||||
fd = open(file_name, "rb")
|
||||
doc = SimplePDFViewer(fd)
|
||||
doc.render()
|
||||
|
||||
# Getting the string content from the file
|
||||
resume_content_dump = " ".join(doc.canvas.strings)
|
||||
sucky_resume_content = " ".join(doc.canvas.strings[:5])
|
||||
# print(resume_content_dump)
|
||||
|
||||
# Example inputs from the company
|
||||
previous_roles = ["technical product manager", "product manager"]
|
||||
previous_skills = ["react", "sql"]
|
||||
previous_roles.extend(previous_skills)
|
||||
client_interests = previous_roles
|
||||
print(client_interests)
|
||||
|
||||
# Test of text distance algo
|
||||
print(textdistance.levenshtein.normalized_similarity('ass', 'a s s'))
|
||||
|
||||
# Finding total final score for words
|
||||
list_norm_scores = [textdistance.jaro_winkler(resume_content_dump, word) for word in client_interests]
|
||||
avg_normalized_score = sum(list_norm_scores) / len(list_norm_scores)
|
||||
|
||||
# sucky resume
|
||||
sucky_list_norm_scores = [textdistance.jaro_winkler(sucky_resume_content, word) for word in client_interests]
|
||||
sucky_avg_normalized_score = sum(sucky_list_norm_scores) / len(sucky_list_norm_scores)
|
||||
|
||||
print('stud resume: ', avg_normalized_score * 100)
|
||||
print('sucky: ', sucky_avg_normalized_score * 100)
|
||||
Reference in New Issue
Block a user