Last updated:
0 purchases
OurvleApi 0.3.1
OurvleApi
Unofficial API to interface with OurVle through python
Getting Started:
Install package with pip
pip install OurvleApi
Import the package
from OurvleApi import ourvle
Features:
Without Login
View and read news
Get help information
login
With Login:
View all your courses
Get detailed information about your courses, including the lecturers, resources. news and links
Functions:
Without Login
ourvle.news()
Returnts a list of News objects (sourced from the front page)
news_list = ourvle.news()
ourvle.help()
Prints a string of helpful information
ourvle.login(username,password)
Accepts strings for username and password
Returns a Client object
Prints the name of the user
client = login(username,password)
==> Alexander McIntosh
With Login
Client:
Client.session
Returns a session object with the necessary cookies to traverse the website
Client.course_list
Returns a list of Course objects
my_courses = client.course_list
print(my_courses)
==> [COMP1161, COMP1210,...]
print(my_courses[1])
==> COMP1210 | S2_2022/23 Mathematics for Computing ['Fake Name', 'Faker Name']
Client.user
Returns a string of the name of the current user
client.user
==> Alexander McIntosh
Course:
Course.name
Returns a string of the course name
test_course = my_courses[1]
test_course.name
==> S2_2022/23 Mathematics for Computing
Course.code
Returns a string of the course code
test_course.code
==> COMP1210
Course.link
Returns a string of the link to the course page
==> https://ourvle.mona.uwi.edu/course/....
Course.teachers
Returns a list of dictionaries with the course teachers' information
test_course.teachers
==> [{'role': 'Lecturer', 'name': 'Fake Name', 'profile_link': 'https://ourvle.mona.uwi.edu/user....'}, {'role': 'Tutor', 'name': 'Faker Name', 'profile_link': 'https://ourvle.mona.uwi.edu/user....'}]
Course.resources()
returns a list of dictionaries with the course resources organized by topic (or section)
test_course.resources()
==> [{'section_name': 'NOTICE', 'resources': [Course Outline File, TEXTBOOK (New Elementary Approach to Japanese) Units 1-2 File, Textbook Units 1-5 File,...]}...]
Course.links()
returnsa a list of dictionaries with the course links organized by topic (or section) including links to online classes.
test_course.links()
==> [{'section_name': 'General', 'links': []}, {'section_name': 'COURSE OUTLINE', 'links': []}, {'section_name': 'ZOOM ONLINE TEACHING CORNER', 'links': [{'name': 'ZOOM LECTURES (ONLINE) - Mona and WJC_Tuesdays', 'link': 'https://ourvle.mona.uwi.edu/....}]
(experimental)
Course.blocks()
Returns a list of dictionaries with information in blocks located around the course page (if any)
test_course.blocks()
==> []
Course.news()
Returns a list of dictionaries with information about items in the course news block (if any)
test_course.news()
==> [{'date': '31 Jan, 21:55', 'author': Fake Name, 'topic': 'ONLINE Tutorial', 'link': 'https://ourvle.mona.uwi.edu/...}]
Resource
Resource.name
Returns a string with the name of the Resource
resource.name
==> 'Course Outline File'
Resource.details
Returns a string with the Resource details
resource.details
==> '15KB Word document'
Resource.link
Returns a string with the link to the resource
resource.link
==>'https://ourvle.mona.uwi.edu/mod/resource/view....'
Resource.download(*name)
Downloads the resource
If no name is passed, uses the resource name
File extension should not be included when passing the name
resource.download("outline")
News:
News.topic
Returns the topic of the news post as a string
test_news = news_list[0]
test_news.topic
==> 'Unavailability of UWI Mona ICT Services; December 28 - 31, 2022'
News.author
Returns the author of the news post as a string
test_news.author
==> 'OurVle Administrator'
News.date
Returns the date the news was posted as a string
test_news.date
==>'Tue, 27 Dec 2022, 1:32 PM'
News.link
Returns the link to the news post as a string
test_news.link
==> 'https://ourvle.mona.uwi.edu/mod/forum/....'
News.content()
Reuturns the content of the news post as a string
test_news.content()
==> 'TO WHOM IT MAY CONCERN\n\xa0\nGood day.\nAs per a Mona Messaging announcement sent on Dec.... Regards,'
DISCLAIMER:
This API is not affiliated with, endorsed by, or sponsored by the University of the West Indies (UWI) or OurVle. The information provided through this API is intended for educational and informational purposes only and is not guaranteed to be accurate or up-to-date. The University of the West Indies and OurVle are the sole owners of all rights, title, and interest in OurVle. Use of this API is subject to the terms and conditions outlined by the University of the West Indies and OurVle. By using this API, you agree to indemnify and hold harmless the University of the West Indies and OurVle for any and all claims arising from your use of this API.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.