Skip to content

Instantly share code, notes, and snippets.

@EhsanKia
Created April 25, 2014 17:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save EhsanKia/11296465 to your computer and use it in GitHub Desktop.
Save EhsanKia/11296465 to your computer and use it in GitHub Desktop.
Fetches transcript from minerva
import requests
LOGIN_URL = "https://horizon.mcgill.ca/pban1/twbkwbis.P_ValLogin"
DATA_URL = "https://horizon.mcgill.ca/pban1/bzsktran.P_Display_Form"
def login(username, password):
info = {"sid": username, "PIN": password}
cookies = {"TESTID": "set"}
r = requests.post(LOGIN_URL, data=info, cookies=cookies)
return r.cookies.get("SESSID")
def get_transcript(session):
req_filter = "user_type=S&tran_type=V"
cookies = {"SESSID": session}
r = requests.post(DATA_URL, data=req_filter, cookies=cookies)
return r.content
session_id = login("john.smith@mail.mcgill.ca", "hunter2")
with open("transcript.html", "w") as f:
f.write(get_transcript(session_id))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment