Changes
Browse files- SkillExtract.py +13 -13
SkillExtract.py
CHANGED
@@ -65,15 +65,15 @@ class SkillExtractorDetails:
|
|
65 |
job_description = job_description.replace(')',' ')
|
66 |
delimiters = ",", " ", " , ", ";","\n","/","\\"
|
67 |
regex_pattern = '|'.join(map(re.escape, delimiters))
|
68 |
-
df = SkillExtractor.getNewSkills(db_params)
|
69 |
data = re.split(regex_pattern, job_description)
|
70 |
#data = job_description.split(',')
|
71 |
for ds in data:
|
72 |
#print(ds)
|
73 |
try:
|
74 |
-
if(SkillExtractor.skill_Validate(df,ds.strip())):
|
75 |
job_roles.append(ds)
|
76 |
-
SkillExtractor.GetSkillId(ds.strip(),JdMasterid,db_params)
|
77 |
print("Skills Identified* : " + ds)
|
78 |
except Exception as error:
|
79 |
test = 1
|
@@ -84,10 +84,10 @@ class SkillExtractorDetails:
|
|
84 |
conn = psycopg2.connect(**db_params)
|
85 |
cursor = conn.cursor()
|
86 |
|
87 |
-
|
88 |
# Retrieve "id" and "description" columns from the table
|
89 |
#query = sql.SQL("select jdmasterid,jobdescription from JDMaster where isskillsextracted in (0)")
|
90 |
-
query = "select jdmasterid,jobdescription,filename from JDMaster where isskillsextracted = 0 and jdmasterid = str(" +
|
91 |
|
92 |
# Use Pandas to read the data into a DataFrame
|
93 |
df = pd.read_sql_query(query, conn)
|
@@ -181,7 +181,7 @@ class SkillExtractorDetails:
|
|
181 |
conn.commit()
|
182 |
print("Skill Identified : ", skill_name)
|
183 |
#print("Skill inserted in SkillMaster and Inserted in JDSkillDetails")
|
184 |
-
SkillExtractor.extractWords(description_value,id_value,db_params)
|
185 |
query = "update public.jdmaster set isskillsextracted = 1 where jdmasterid = (%s)"
|
186 |
|
187 |
params = (id_value,)
|
@@ -189,7 +189,7 @@ class SkillExtractorDetails:
|
|
189 |
conn.commit()
|
190 |
print("Skills Updated for Skills Extraction for file ", filename_jd)
|
191 |
print("Total Skills : ", len(skills_list))
|
192 |
-
return SkillExtractor.latestSkillDetails(id_value,db_params)
|
193 |
def latestSkillDetails(jid,db_params):
|
194 |
query = "select * from jdmaster where isskillsextracted=1 order by jdmasterid desc limit 1 "
|
195 |
conn = psycopg2.connect(**db_params)
|
@@ -200,14 +200,14 @@ class SkillExtractorDetails:
|
|
200 |
upload = df.iat[0,3]
|
201 |
if(fileId != jid):
|
202 |
print("Skill Details for File : " + str(filename) + " , ID " + str(fileId) + " , Uploaded on " + str(upload))
|
203 |
-
data = SkillExtractor.display_skills(fileId)
|
204 |
jid = df.iat[0,0]
|
205 |
return data
|
206 |
def tuple_to_int(tup):
|
207 |
if len(tup) == 1:
|
208 |
return tup[0]
|
209 |
else:
|
210 |
-
return tup[0] * (10 ** (len(tup) - 1)) + SkillExtractor.tuple_to_int(tup[1:])
|
211 |
|
212 |
|
213 |
def skill_check(dbQuery,db_params):
|
@@ -225,16 +225,16 @@ class SkillExtractorDetails:
|
|
225 |
def display_skills(id):
|
226 |
jd=str(id)
|
227 |
query = "select skillname from SkillDetails where id = "+ jd +" and skillscore > 99 and skilltype = 'Hard Skill'"
|
228 |
-
RequiredSkills_Hard = SkillExtractor.skill_check(query)
|
229 |
|
230 |
query = "select skillname from SkillDetails where id = "+ jd +" and skillscore > 50 and skilltype = 'Soft Skill'"
|
231 |
-
RequiredSkills_Soft = SkillExtractor.skill_check(query)
|
232 |
|
233 |
query = "select skillname from SkillDetails where id = "+ jd +" and skillscore < 50 and skilltype = 'Soft Skill'"
|
234 |
-
RequiredSkills_G1 = SkillExtractor.skill_check(query)
|
235 |
|
236 |
query = "select skillname from SkillDetails where id = "+ jd +" and skillscore < 99 and skilltype = 'Hard Skill'"
|
237 |
-
RequiredSkills_G2 = SkillExtractor.skill_check(query)
|
238 |
|
239 |
print('')
|
240 |
print("Required Skills : " + RequiredSkills_Hard)
|
|
|
65 |
job_description = job_description.replace(')',' ')
|
66 |
delimiters = ",", " ", " , ", ";","\n","/","\\"
|
67 |
regex_pattern = '|'.join(map(re.escape, delimiters))
|
68 |
+
df = SkillExtractorDetails.SkillExtractor.getNewSkills(db_params)
|
69 |
data = re.split(regex_pattern, job_description)
|
70 |
#data = job_description.split(',')
|
71 |
for ds in data:
|
72 |
#print(ds)
|
73 |
try:
|
74 |
+
if(SkillExtractorDetails.SkillExtractor.skill_Validate(df,ds.strip())):
|
75 |
job_roles.append(ds)
|
76 |
+
SkillExtractorDetails.SkillExtractor.GetSkillId(ds.strip(),JdMasterid,db_params)
|
77 |
print("Skills Identified* : " + ds)
|
78 |
except Exception as error:
|
79 |
test = 1
|
|
|
84 |
conn = psycopg2.connect(**db_params)
|
85 |
cursor = conn.cursor()
|
86 |
|
87 |
+
jd_id = str(JdID)
|
88 |
# Retrieve "id" and "description" columns from the table
|
89 |
#query = sql.SQL("select jdmasterid,jobdescription from JDMaster where isskillsextracted in (0)")
|
90 |
+
query = "select jdmasterid,jobdescription,filename from JDMaster where isskillsextracted = 0 and jdmasterid = str(" + jd_id + ")"
|
91 |
|
92 |
# Use Pandas to read the data into a DataFrame
|
93 |
df = pd.read_sql_query(query, conn)
|
|
|
181 |
conn.commit()
|
182 |
print("Skill Identified : ", skill_name)
|
183 |
#print("Skill inserted in SkillMaster and Inserted in JDSkillDetails")
|
184 |
+
SkillExtractorDetails.SkillExtractor.extractWords(description_value,id_value,db_params)
|
185 |
query = "update public.jdmaster set isskillsextracted = 1 where jdmasterid = (%s)"
|
186 |
|
187 |
params = (id_value,)
|
|
|
189 |
conn.commit()
|
190 |
print("Skills Updated for Skills Extraction for file ", filename_jd)
|
191 |
print("Total Skills : ", len(skills_list))
|
192 |
+
return SkillExtractorDetails.SkillExtractor.latestSkillDetails(id_value,db_params)
|
193 |
def latestSkillDetails(jid,db_params):
|
194 |
query = "select * from jdmaster where isskillsextracted=1 order by jdmasterid desc limit 1 "
|
195 |
conn = psycopg2.connect(**db_params)
|
|
|
200 |
upload = df.iat[0,3]
|
201 |
if(fileId != jid):
|
202 |
print("Skill Details for File : " + str(filename) + " , ID " + str(fileId) + " , Uploaded on " + str(upload))
|
203 |
+
data = SkillExtractorDetails.SkillExtractor.display_skills(fileId)
|
204 |
jid = df.iat[0,0]
|
205 |
return data
|
206 |
def tuple_to_int(tup):
|
207 |
if len(tup) == 1:
|
208 |
return tup[0]
|
209 |
else:
|
210 |
+
return tup[0] * (10 ** (len(tup) - 1)) + SkillExtractorDetails.SkillExtractor.tuple_to_int(tup[1:])
|
211 |
|
212 |
|
213 |
def skill_check(dbQuery,db_params):
|
|
|
225 |
def display_skills(id):
|
226 |
jd=str(id)
|
227 |
query = "select skillname from SkillDetails where id = "+ jd +" and skillscore > 99 and skilltype = 'Hard Skill'"
|
228 |
+
RequiredSkills_Hard = SkillExtractorDetails.SkillExtractor.skill_check(query)
|
229 |
|
230 |
query = "select skillname from SkillDetails where id = "+ jd +" and skillscore > 50 and skilltype = 'Soft Skill'"
|
231 |
+
RequiredSkills_Soft = SkillExtractorDetails.SkillExtractor.skill_check(query)
|
232 |
|
233 |
query = "select skillname from SkillDetails where id = "+ jd +" and skillscore < 50 and skilltype = 'Soft Skill'"
|
234 |
+
RequiredSkills_G1 = SkillExtractorDetails.SkillExtractor.skill_check(query)
|
235 |
|
236 |
query = "select skillname from SkillDetails where id = "+ jd +" and skillscore < 99 and skilltype = 'Hard Skill'"
|
237 |
+
RequiredSkills_G2 = SkillExtractorDetails.SkillExtractor.skill_check(query)
|
238 |
|
239 |
print('')
|
240 |
print("Required Skills : " + RequiredSkills_Hard)
|