Skip to content

Commit ddafe62

Browse files
committed
added data_operations file that takes care of data manipulations involving skills and organizations
1 parent 1734f2e commit ddafe62

File tree

3 files changed

+104
-53
lines changed

3 files changed

+104
-53
lines changed

cvscan/data/organizations/avoid_organizations

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,6 @@ aS'Work experience'
55
p2
66
aS'Software engineer'
77
p3
8+
aS'Community'
9+
p4
810
a.

cvscan/data/organizations/organization_ops.py

Lines changed: 0 additions & 53 deletions
This file was deleted.

cvscan/data_operations.py

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
"""
2+
3+
Contains util functions for manipulating the data used by cvscan
4+
5+
"""
6+
7+
import pickle
8+
import logging
9+
10+
import dirpath
11+
12+
logging.basicConfig(level=logging.DEBUG)
13+
14+
DATAPATH = dirpath.PKGPATH + '/data/'
15+
16+
17+
"""
18+
19+
An Utility function to add organizations to the explicit_organizations file.
20+
Params: orgs Type: List of String
21+
22+
"""
23+
def add_organizations(orgs):
24+
with open(DATAPATH + 'organizations/explicit_organizations','rb') as fp:
25+
organizations = pickle.load(fp)
26+
with open(DATAPATH + 'organizations/avoid_organizations','rb') as fp:
27+
avoid_organizations = pickle.load(fp)
28+
logging.debug("explicit_organizations and avoid_organizations files loaded")
29+
30+
for org in orgs:
31+
if org.lower().capitalize() not in organizations:
32+
organizations.append(org.lower().capitalize())
33+
logging.debug(org + "added to explicit_organizations")
34+
if org.lower().capitalize() in avoid_organizations:
35+
avoid_organizations.remove(org.lower().capitalize())
36+
logging.debug(org + "removed from avoid_organizations")
37+
38+
with open(DATAPATH + 'organizations/explicit_organizations','wb') as fp:
39+
pickle.dump(organizations, fp)
40+
with open(DATAPATH + 'organizations/avoid_organizations','wb') as fp:
41+
pickle.dump(avoid_organizations, fp)
42+
logging.debug("explicit_organizations and avoid_organizations files written")
43+
44+
45+
"""
46+
47+
An Utility function to add organization to be avoided.
48+
Params: orgs Type: List of String
49+
50+
"""
51+
def remove_organizations(orgs):
52+
with open(DATAPATH + 'organizations/explicit_organizations','rb') as fp:
53+
organizations = pickle.load(fp)
54+
with open(DATAPATH + 'organizations/avoid_organizations','rb') as fp:
55+
avoid_organizations = pickle.load(fp)
56+
logging.debug("explicit_organizations and avoid_organizations files loaded")
57+
58+
for org in orgs:
59+
if org.lower().capitalize() not in avoid_organizations:
60+
avoid_organizations.append(org.lower().capitalize())
61+
logging.debug(org + "added to avoid_organizations")
62+
if org.lower().capitalize() in organizations:
63+
organizations.remove(org.lower().capitalize())
64+
logging.debug(org + "removed from explicit_organizations")
65+
66+
with open(DATAPATH + 'organizations/explicit_organizations','wb') as fp:
67+
pickle.dump(organizations, fp)
68+
with open(DATAPATH + 'organizations/avoid_organizations','wb') as fp:
69+
pickle.dump(avoid_organizations, fp)
70+
logging.debug("explicit_organizations and avoid_organizations files written")
71+
72+
73+
"""
74+
75+
An Utility function to add skills.
76+
Params: skills_to_add Type: List of Strings
77+
78+
"""
79+
def add_skills(skills_to_add):
80+
with open(DATAPATH +'skills/skills','rb') as fp:
81+
skills = pickle.load(fp)
82+
for skill in skills_to_add:
83+
if skill.lower() not in skills:
84+
skills.append(skill.lower())
85+
with open(DATAPATH +'skills/skills','wb') as fp:
86+
pickle.dump(skills,fp)
87+
88+
89+
"""
90+
91+
An Utility function to remove skills.
92+
Params: skills_to_remove Type: List of Strings
93+
94+
"""
95+
def remove_skills(skills_to_remove):
96+
with open(DATAPATH +'skills/skills','rb') as fp:
97+
skills = pickle.load(fp)
98+
for skill in skills_to_remove:
99+
if skill.lower() in skills:
100+
skills.remove(skill.lower())
101+
with open(DATAPATH +'skills/skills','wb') as fp:
102+
pickle.dump(skills,fp)

0 commit comments

Comments
 (0)