Skip to content

Latest commit

 

History

History
59 lines (40 loc) · 1.48 KB

README.md

File metadata and controls

59 lines (40 loc) · 1.48 KB

ps.py

A PowerSchool authentication & data fetching library implemented in Python.

Inspired by ScorePortal.

More details & API reference here.

NOTE: This was written more than a year ago, and last I checked it was working fine. However, PowerSchool may have undergone upgrades which could disrupt the functionality of this library. Also, I was only able to test it with AUSD's PowerSchool, so it may or may not work for other districts.

Installation

Extract the contents of the archive to a folder and run:

$ python setup.py install

Example

This example shows how one can use ps.py to login to PowerSchool and fetch grades.

import ps

# Credentials
URL = 'http://powerschool.ausd.net/'
USERNAME = '12345'
PASSWORD = 'j83nl3a'

# Connect to PowerSchool
conn = ps.Connection()

# check if logged in
if conn.login(URL, USERNAME, PASSWORD):

	# get Student instance
	student = conn.get_student()

	# output a JSON file
	with open('12345.json', 'w') as file:
		file.write(student.to_json())

	# process info
	print "Hi there, " + student.first_name
	print "Your GPA: " + student.gpa
	print "Your classes:"

	for course in student.courses:
		print course.name, course.letter_grade, course.number_grade
		print "Assignments:"
		for assn in course.assignments:
			print assn.due_date, assn.category, assn.name

else:
	print 'Could not log in: ' + conn.error

# we're done, close the object.
conn.close()