Attendance (Parameters)

Jump to solution
matiasferrari
Community Member

Hello, 

I've built a web scrapper with Python to scan student's attendance for all courses within a school. For this, I have an index of all courses with their course_id, and weekly one by one, the scrapper goes and stores the values for present, absent, late for each student in student within the Canvas Attendance list. With this tool we get valuable information to keep track of students behavior throughout the semester and it feeds an alert system to track students that may need support in their learning, connectivity (if on pandemic lockdown) and/or counseling. 

However, the only parameter that Canvas seems to pass to Attendance is de username which in itself is hard to link to the user's email, student_id and furthermore, to connect the attendance data to institutional data like grades that lives outside of Canvas. I've tried some different routes that requiere the scrapper to go into other Canvas pages (People) and collect that data, however the process time gets longer. 

Scanning around 220 courses takes the scrapper about 1 hour and a half  to do the job (going only through attendance, which is the slowest page to load within the Canvas menu). If I add that extra layer, the scrapper does a wonderful job and provides the whole information I need, but it takes about 2 hours and a half of three.

Is there a way to pass extra data form Canvas to Attendance (like student_id or email) in order to reduce the process time for this web scrapper? I have no direct access to admin privileges, but if this is something that an admin-level-user can do, I might be able to ask for such a modification to the IT people in the University.

Thanks in advance, 

Matias

Design School, Universidad del Desarrollo

Chile

 

0 Likes
1 Solution
nwilson7
Community Champion

@matiasferrari Not sure if this is everything you are looking for but your Canvas Admin does have an Attendance report that they can run that looks like it will provide you most if not all of the information you are looking for without the need for custom scripting/scrapers.

https://community.canvaslms.com/t5/Admin-Guide/How-do-I-run-Roll-Call-Attendance-reports-for-an-acco...

Hope this helps!

-Nick

View solution in original post