A Python library to retrieve course and section information from the UCLA Registrar
Project description
UCLA Catalog
A Python library to retrieve course and section information from the UCLA Registrar
Why
While UCB has BerkeleyTime and UCSD has their own in-house API that students may use to request course and section information, UCLA has no such service. In fact, course numbers, titles, descriptions, and information about sections are spread between two different domains, one of which only responds properly if you spoof a request header. Not only this, but there is no documentation for the archaic and inconsistent modeling that the backend will respond to, making the lives of student developers who want to create services that allow their classmates to access course and section information unnecessarily difficult.
This library aims to make it less of a hassle for UCLA student developers to access details about courses and their related sections.
Contributing
The foundation of this library was built in less than a week with little initial knowledge of Python. Therefore, there will be lots of code that doesn't follow Python conventions and functions that are inefficient. Feel free to contribute by fixing bugs, making things more efficient, and/or expanding the information given by the models.
Bugs should be reported to the issue tracker.
Usage
Installation
pip install uclacatalog
See the wiki for documentation
License
This project is licensed under AGPLv3 and is free (both as in no-cost and freedom) software. Thus, you are free to modify, use, and distribute this library for whatever purposes you like on the condition that your use be also licensed under AGPLv3, whether or not your application is shipped in a binary form or is used over the internet. An important implication of this is that if requested by an end-user, you must supply the source code for your application to them. The full terms of this license can be found here.
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
File details
Details for the file uclacatalog-1.1.0.tar.gz
.
File metadata
- Download URL: uclacatalog-1.1.0.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f0026def3cb0d252f8f2c6903a3cce1c5b4c30ba10f5bcbe53344d4256147c0f |
|
MD5 | b3d98e31f85ca47133c327516ad01b20 |
|
BLAKE2b-256 | cb03871f20bd481ed16f6744d12edf2d2c589775caaf171e5589491f3d1303a9 |
File details
Details for the file uclacatalog-1.1.0-py3-none-any.whl
.
File metadata
- Download URL: uclacatalog-1.1.0-py3-none-any.whl
- Upload date:
- Size: 25.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 695e423ae59c46c58886b7a656158c23f9feff58d76e2d374399756a6f143500 |
|
MD5 | a67c3a70a1313afcf391f33cbf51771c |
|
BLAKE2b-256 | 09612104aaee6dcb06034d58f3f129ebe6331c87e5d69f7fcecdf1027567d629 |