A simple API wrapper and web scraper for the UCSD Associated Students (AS) instructor grade archive.
Project description
UCSD Associated Students (AS) Instructor Grade Archive (IGA)
A simple API wrapper and web scraper for the UCSD Associated Students (AS) instructor grade archive.
Quickstart
Python Usage
Start by importing the GradeArchive
class from the ucsdasiga
package:
>>> from asiga import GradeArchive
GradeArchive
class accepts 5 optional arguments:
Parameter | Type | Description |
---|---|---|
quarter |
str |
Filter results to the fall ("FA" ), winter ("WI" ), or spring ("SP" ). |
year |
int |
Filter results to a specific year (r"^\d\d$" ). |
instructor |
str |
Filter results to classes taught by a specific instructor (f"{last_name}, {first_name}" ). [1] |
subject |
str |
Filter results to classes in a specific department (r"^[A-Z]{3,4}$" ) (e.g., "CSE" , "MCWP" ). [2] |
code |
str |
Filter results to a specific course number (r"^[0-9]{1,3}[A-Z]{0,2}$" ) (e.g., "11" , "20" ). |
- [1]: See the UCSD website for the faculty directory.
- [2]: See the UCSD website for a comprehensive list of active department subject codes.
The following Python call generates the grade archive of all CSE 11 classes (regardless of quarter and the instructor who taught the class) that occurred during the 2021 academic year:
>>> archive = GradeArchive(year=21, subject="CSE", code="11")
>>> archive.data()
Subject Course Year Quarter Title Instructor GPA A B C D F W P NP
0 CSE 11 21 WI Accel. Intro to Programming Cao, Yingjun 3.284 37.9 22.80 4.67 1.92 2.19 6.04 14.50 6.31
1 CSE 11 21 SP Accel. Intro to Programming Miranda, Gregory Joseph 3.485 51.3 9.33 4.28 0.38 4.28 7.39 12.40 10.10
2 CSE 11 21 FA Accel. Intro to Programming Politz, Joseph Gibbs 3.484 68.4 18.20 2.61 3.39 4.43 1.56 0.78 0.52
3 CSE 11 21 FA Accel. Intro to Programming Miranda, Gregory Joseph 3.331 64.5 15.60 3.64 6.25 5.72 2.08 0.52 1.56
Command Line Usage
$ python -m asiga -h
usage: asiga [-h] [-v] [-q QUARTER] [-y YEAR] [-i INSTRUCTOR] [-s SUBJECT] [-c CODE]
The following command generates the grade archive of all CSE 11 classes (regardless of quarter and the instructor who taught the class) that occurred during the 2021 academic year:
$ python -m asiga -y 21 -s CSE -c 11
Subject Course Year Quarter Title Instructor GPA A B C D F W P NP
0 CSE 11 21 WI Accel. Intro to Programming Cao, Yingjun 3.284 37.9 22.80 4.67 1.92 2.19 6.04 14.50 6.31
1 CSE 11 21 SP Accel. Intro to Programming Miranda, Gregory Joseph 3.485 51.3 9.33 4.28 0.38 4.28 7.39 12.40 10.10
2 CSE 11 21 FA Accel. Intro to Programming Politz, Joseph Gibbs 3.484 68.4 18.20 2.61 3.39 4.43 1.56 0.78 0.52
3 CSE 11 21 FA Accel. Intro to Programming Miranda, Gregory Joseph 3.331 64.5 15.60 3.64 6.25 5.72 2.08 0.52 1.56
Requirements
Requires Python 3.5+.
Dependencies:
See the project Pipfile for a full list of dependencies, including development dependencies.
Installation
Installing from PyPI
$ python -m pip install ucsdasiga
Installing from GitHub
First, clone the repository:
$ git clone git://github.com/JacobLee23/UCSD-AS-IGA.git
After obtaining a copy of the source code, it can be embedded in a Python package. Or, it can be installed into site-package
:
$ cd ucsdasiga
$ python -m pip install .
Refer to the Python documentation for additional help installing Python modules.
Notices of Non-Affiliation and Disclaimer
This project is not endorsed by, directly affiliated with, maintained, authorized, or sponsored by the University of California, San Diego. All product and company names are the registered trademarks of their original owners. The official University of California, San Diego website can be found at https://ucsd.edu/.
This project is not endorsed by, directly affiliated with, maintained, authorized, or sponsored by Associated Students, UC San Diego. All product and company names are the registered trademarks of their original owners. The official Associated Students, UC San Diego website can be found at https://as.ucsd.edu/.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ucsdasiga-1.0.0a7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ac8fc35d54131df42053d3d487a23024cb2f8b86ce41a27b9c47b24b9a35aa0 |
|
MD5 | 16099ab89fdf0919d989499d9eeb7f00 |
|
BLAKE2b-256 | ef81a3b6070c99e5290f39f6b6782ab89afa956a20841c03baa24b6f8f98e975 |