Spaces:
Sleeping
Sleeping
import re | |
from datetime import datetime | |
import psycopg2 | |
import pandas as pd | |
class SkillExtractorDetailsV1: | |
def GetSkillData(skill_extractor, inputData, db_params): | |
getdbskills = SkillExtractorDetailsV1.GetSkillDatafromDB(db_params) | |
skills_list = [] | |
annotations = skill_extractor.annotate(inputData) | |
matches = annotations['results']['full_matches']+annotations['results']['ngram_scored'] | |
skill_Typelst = [] | |
skill_Scorelst = [] | |
reuiredSkilllst = [] | |
softskillslst = [] | |
goodtohavelst = [] | |
for result in matches: | |
skill_id = result['skill_id'] | |
skill_name1 = skill_extractor.skills_db[skill_id]['skill_name'] | |
skill_name = skill_name1.split("(")[0].strip() | |
skill_type = skill_extractor.skills_db[skill_id]['skill_type'] | |
skill_score = round(result['score'],2) | |
result = getdbskills[getdbskills['skill'] == skill_name.upper()] | |
if(result.empty): | |
if( skill_name in skills_list): | |
continue | |
if(skill_score > 99 and skill_type != 'Soft Skill'): | |
reuiredSkilllst.append(skill_name) | |
elif(skill_score > 50 and skill_type == 'Soft Skill'): | |
softskillslst.append(skill_name) | |
elif(skill_score <= 50 and skill_type == 'Soft Skill'): | |
goodtohavelst.append(skill_name) | |
elif(skill_score <= 99 and skill_type != 'Soft Skill'): | |
goodtohavelst.append(skill_name) | |
# skills_list.append(skill_name) | |
# skill_Typelst.append(skill_type) | |
# skill_Scorelst.append(skill_score) | |
else: | |
print('----'+ result) | |
# list_of_tuples = list(zip(skills_list, skill_Typelst,skill_Scorelst)) | |
# df = pd.DataFrame(list_of_tuples, | |
# columns=['Skill_Name', 'Skill_Type','Skill_Score']) | |
data = {'Data':['Required Skills', 'Soft Skills', 'Good to have Skills'], 'Values':[reuiredSkilllst, softskillslst, goodtohavelst]} | |
df = pd.DataFrame(data) | |
return df | |
def GetSkillDatafromDB(db_params): | |
conn = psycopg2.connect(**db_params) | |
query = "select upper(skilldetails) skill from skillmaster where weightage = 0" | |
df = pd.read_sql_query(query, conn) | |
return df | |