Skip to content

Commit ee9e1f3

Browse files
committed
Version 0.6: Added PlanetTerp and cleaned up the code
1 parent 9ccd64c commit ee9e1f3

15 files changed

Lines changed: 169 additions & 21 deletions

File tree

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "umd-api"
7-
version = "0.5.2"
7+
version = "0.6"
88
description = "A package for accessing the UMD API in Python"
99
readme = "README.md"
1010
authors = [

umd_api/__init__.py

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
1-
from .base_api import _BaseAPI
2-
from .bus import Bus
3-
from .courses import Courses
4-
from .majors import Majors
5-
from .map import Map
6-
from .professors import Professors
1+
from .general.base_api import _BaseAPI
2+
from .general.bus import Bus
3+
from .general.courses import Courses
4+
from .general.majors import Majors
5+
from .general.map import Map
6+
from .general.professors import Professors
7+
8+
from .planet_terp.base_api import _BaseAPI
9+
from .planet_terp.courses import Courses
10+
from .planet_terp.professors import Professors
11+
from .planet_terp.grades import Grades
12+
from .planet_terp.search import Search
13+
14+
__all__ = ["Bus", "Courses", "Majors", "Map", "Professors", "Grades", "Search"]

umd_api/general/__init__.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
from .base_api import _BaseAPI
2+
from .bus import Bus
3+
from .courses import Courses
4+
from .majors import Majors
5+
from .map import Map
6+
from .professors import Professors
7+
8+
__all__ = ["Bus", "Courses", "Majors", "Map", "Professors"]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ class _BaseAPI:
77
def _make_request(self, endpoint, **kwargs):
88
params = self._extract_params(**kwargs)
99

10+
print(f'{self.__BASE_URL}/{endpoint}')
1011
try:
1112
response = requests.get(f'{self.__BASE_URL}/{endpoint}', params=params)
1213
response.raise_for_status()

umd_api/bus.py renamed to umd_api/general/bus.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,15 +38,23 @@ def list_stops(self):
3838
return self._make_request(self._ENDPOINT_STOPS)
3939

4040

41-
def get_specific_stops(self, stop_ids):
41+
def get_specific_stops(self, stop_ids : list):
4242

4343
"""
4444
4545
Get data for one or more stops
4646
4747
"""
4848

49-
return self._make_request(f'{self._ENDPOINT_STOPS}/{stop_ids}')
49+
# Formatting
50+
stop_ids_str = ""
51+
52+
for i in stop_ids:
53+
stop_ids_str += "stop_id="
54+
stop_ids_str += i
55+
stop_ids_str += "&"
56+
57+
return self._make_request(f'{self._ENDPOINT_STOPS}?{stop_ids_str}')
5058

5159
def current_bus_locations_by_route(self, route_id):
5260

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from .base_api import _BaseAPI
22

3-
class Courses(BaseAPI):
3+
class Courses(_BaseAPI):
44

55
_ENDPOINT_COURSES = 'courses'
66
_ENDPOINT_MINIFIED_COURSES = 'courses/list'
@@ -15,7 +15,7 @@ def list_courses(self, sort=None, page=None, per_page=None, semester=None, credi
1515
List all courses with optional filters.
1616
1717
"""
18-
return self.make_request(self._ENDPOINT_COURSES, sort, page, per_page, semester, credits, dept_id, gen_ed)
18+
return self._make_request(self._ENDPOINT_COURSES, sort=sort, page=page, per_page=per_page, semester=semester, credits=credits, dept_id=dept_id, gen_ed=gen_ed)
1919

2020
def list_minified_courses(self, sort=None, page=None, per_page=None, semester=None):
2121

@@ -25,7 +25,7 @@ def list_minified_courses(self, sort=None, page=None, per_page=None, semester=No
2525
2626
"""
2727

28-
return self.make_request(self._ENDPOINT_COURSES, sort, page, per_page, semester)
28+
return self._make_request(self._ENDPOINT_COURSES, sort=sort, page=page, per_page=per_page, semester=semester)
2929

3030
def list_sections(self, sort=None, page=None, per_page=None, course_id=None, seats=None, open_seats=None, waitlist=None, semester=None):
3131

@@ -35,17 +35,17 @@ def list_sections(self, sort=None, page=None, per_page=None, course_id=None, sea
3535
3636
"""
3737

38-
return self.make_request(self._ENDPOINT_SECTIONS, sort, page, per_page, course_id, seats, open_seats, waitlist, semester)
38+
return self._make_request(self._ENDPOINT_SECTIONS, sort=sort, page=page, per_page=per_page, course_id=course_id, seats=seats, open_seats=open_seats, waitlis=waitlist, semester=semester)
3939

40-
def view_specific_sections(self, section_ids, semester=None):
40+
def view_specific_sections(self, section_ids : list, semester=None):
4141

4242
"""
4343
4444
View specific sections by section IDs.
4545
4646
"""
4747

48-
return self.make_request(f'{self._ENDPOINT_SECTIONS}/{section_ids}', semester)
48+
return self._make_request(f'{self._ENDPOINT_SECTIONS}/{section_ids}', semester=semester)
4949

5050
def view_specific_courses(self, course_ids, semester=None):
5151

@@ -55,7 +55,7 @@ def view_specific_courses(self, course_ids, semester=None):
5555
5656
"""
5757

58-
return self.make_request(f'{self._ENDPOINT_COURSES}/{course_ids}', semester)
58+
return self._make_request(f'{self._ENDPOINT_COURSES}/{course_ids}', semester=semester)
5959

6060
def view_sections_for_course(self, course_ids, semester=None):
6161

@@ -65,7 +65,7 @@ def view_sections_for_course(self, course_ids, semester=None):
6565
6666
"""
6767

68-
return self.make_request(f'{self._ENDPOINT_COURSES}/{course_ids}/sections', semester)
68+
return self._make_request(f'{self._ENDPOINT_COURSES}/{course_ids}/sections', semester=semester)
6969

7070
def view_specific_sections_for_course(self, course_ids, section_ids):
7171

@@ -75,7 +75,7 @@ def view_specific_sections_for_course(self, course_ids, section_ids):
7575
7676
"""
7777

78-
return self.make_request(f'{self._ENDPOINT_COURSES}/{course_ids}/sections/{section_ids}')
78+
return self._make_request(f'{self._ENDPOINT_COURSES}/{course_ids}/sections/{section_ids}')
7979

8080
def list_semesters(self):
8181

@@ -85,7 +85,7 @@ def list_semesters(self):
8585
8686
"""
8787

88-
return self.make_request(self._ENDPOINT_SEMESTERS)
88+
return self._make_request(self._ENDPOINT_SEMESTERS)
8989

9090
def list_departments(self):
9191

@@ -95,4 +95,4 @@ def list_departments(self):
9595
9696
"""
9797

98-
return self.make_request(self._ENDPOINT_DEPARTMENTS)
98+
return self._make_request(self._ENDPOINT_DEPARTMENTS)
File renamed without changes.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ def list_professors(self, name=None, course_id=None):
88
Returns list of all professors
99
1010
"""
11-
return self._make_request('professors', name, course_id)
11+
return self._make_request('professors', name=name, course_id=course_id)

umd_api/planet_terp/__init__.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from .base_api import _BaseAPI
2+
from .grades import Grades
3+
from .courses import Courses
4+
from .professors import Professors
5+
from .search import Search
6+
7+
__all__ = ["Grades", "Courses", "Professors", "Search"]

0 commit comments

Comments
 (0)