Skip to main content

Library for interacting with Udacity account data and course progress

Project description

# Unofficial Udacity API (for Python)

**by Ty-Lucas Kelley**

![build-status](https://travis-ci.org/tylucaskelley/udacity-api-python.svg?branch=master)
![version](https://pypip.in/version/udacity/badge.svg)
![downloads](https://pypip.in/download/udacity/badge.svg)

---

## ## ##### #### ##### ###### ###### ## ##
## ## ## # ## ## ## ## ## ## ##
## ## ## # ###### ## ## ## ####
## ## ## # ## ## ## ## ## ##
#### ##### ## ## ##### ###### ## ##

This is an unofficial client library for interacting with Udacity courses and users.
It is made up of two parts:

* [Catalog](#catalog)
* A wrapper for Udacity's public [Catalog API](http://udacity.com/public-api/v0/courses)
* [User](#user)
* Log into your Udacity account, see user info, and check course progress

### Warning

Note that this is not an official Udacity product. They are allowed to change their internal
API at any time, and I will try my best to make sure this library gets updated as well.

In the end, be sure to use this only for personal purposes, not any serious application with
a lot of users.

### Installation

It's on pip! Install it from the terminal, with Python 2 or 3:

$ pip install udacity

You can then include it in your application:

import udacity

### User

The `User` class is used to view a user's account info and see their progress in courses.
It includes a lot of convenience functions.

Run `pydoc udacity.User` for information about each method and what it returns.

Example usage:

```py
import udacity

user = udacity.User('email@example.com', 'password123')
name = user.name()

# print out quiz completion rate in each course
for course in user.enrollments():
prog = user.progress(course)
print('Course: ' + prog['title'])
print('\t' + str(prog['quizzes_completed']) + '/'
+ str(prog['quiz_count']) + ' quizzes completed')
```

### Catalog

The `Catalog` class can be used to filter data from Udacity's Catalog API. It has
plenty of convenience functions.

Run `pydoc udacity.Catalog` for information about each method and what it returns.

Example usage:

```py
import udacity

c = udacity.Catalog()

tracks = c.tracks()

track_names = [t['name'] for t in tracks]
web_dev_teachers = c.instructors('cs253')
nd001_description = c.degree('nd001')['expected_learning']
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

udacity-1.1.1.tar.gz (5.8 kB view details)

Uploaded Source

File details

Details for the file udacity-1.1.1.tar.gz.

File metadata

  • Download URL: udacity-1.1.1.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for udacity-1.1.1.tar.gz
Algorithm Hash digest
SHA256 a35fdc221e54a07e6ea063ac1c901273c9a019115c5ec5d331e33deaeeb66af9
MD5 daf763518f98506c635b57f15fa9a191
BLAKE2b-256 9b57bb257a53742d0d8e5e76a8f523178fcd3d4718ebf3fcb6a73fd335917b77

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page