-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathJobPostingFetcher.py
37 lines (29 loc) · 1.44 KB
/
JobPostingFetcher.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
class JobPostingFetcher:
def __init__(self,formatter,scraping_service,data_accessor):
self.formatter = formatter
self.scraping_service = scraping_service
self.data_accessor = data_accessor
def latest_internship_postings(self):
# Set up dataframe
data = self.scraping_service.get_github_internship2024()
df_internships = self.formatter.readme_to_dataframe(data)
df_internships = self.data_accessor.update_company_column(df_internships)
# Get latest postings
df_postings = self.data_accessor.get_reccent_postings(df_internships)
return df_postings
def latest_offseason_postings(self):
# Set up dataframe
data = self.scraping_service.get_github_offseason2024()
df_offseason = self.formatter.readme_offseason_to_dataframe(data)
df_offseason = self.data_accessor.update_company_column(df_offseason)
# Get latest postings
df_postings = self.data_accessor.get_reccent_postings(df_offseason)
return df_postings
def latest_newgrad_postings(self):
# Set up dataframe
data = self.scraping_service.get_github_newgrad2024()
df_newgrad = self.formatter.readme_to_dataframe(data)
df_newgrad = self.data_accessor.update_company_column(df_newgrad)
# Get latest postings
df_postings = self.data_accessor.get_reccent_postings(df_newgrad)
return df_postings