Skip to main content

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.

Metadata

Release files for uclacatalog 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for uclacatalog 1.1.0
File Size Uploaded Provenance Actions
uclacatalog-1.1.0.tar.gz 12.3 kB Without provenance Details for uclacatalog-1.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for uclacatalog 1.1.0
File Interpreter ABI Platform Actions
uclacatalog-1.1.0-py3-none-any.whl Python 3 none any Details for uclacatalog-1.1.0-py3-none-any.whl

Total release size: 37.6 kB

Release files / uclacatalog-1.1.0.tar.gz

Download URL uclacatalog-1.1.0.tar.gz
Size 12.3 kB
Tags Source
SHA-256 checksum
How to use checksums
f0026def3cb0d252f8f2c6903a3cce1c5b4c30ba10f5bcbe53344d4256147c0f
BLAKE2b-256 checksum
How to use checksums
cb03871f20bd481ed16f6744d12edf2d2c589775caaf171e5589491f3d1303a9
Upload date
Uploaded using Trusted Publishing?
What is 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

Release files / uclacatalog-1.1.0-py3-none-any.whl

Download URL uclacatalog-1.1.0-py3-none-any.whl
Size 25.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
695e423ae59c46c58886b7a656158c23f9feff58d76e2d374399756a6f143500
BLAKE2b-256 checksum
How to use checksums
09612104aaee6dcb06034d58f3f129ebe6331c87e5d69f7fcecdf1027567d629
Upload date
Uploaded using Trusted Publishing?
What is 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

Security for uclacatalog 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page