Français ci-dessous
AI assistant for correction on Wild Code School's Odyssey platform.
As part of my training at Wild Code School, I regularly have to correct my colleagues' exercises. This allows me to see other codes, other ways of solving the same problem. But it's also a time-consuming task. In theory, for every exercise I hand in, I have to correct 3.
That's why I've tried to code a correction bot 🤖.
Create an AI agent that :
- navigates a web browser to the Odyssey platform login page
- logs in using my login and password
- goes to the exercise correction page
- filters the exercises to be corrected according to parameters defined in arguments
- scrapes the exercise page to retrieve the instructions and the student's name
- goes to the answer notebook and scrapes the code
- analyzes the student's code and checks that the instructions have been respected
- generates a comment to congratulate the student or suggest an improvement if the code doesn't meet the instruction
- writes this comment in the dedicated box and sends the correction
Language: Python 🐍 (Object Oriented Programming)
Libraries:
- web browsing: Helium / Selenium 🌐
- web scraping: Beautiful Soup 🥣
- response analysis and comment generation: Gemini API 🤖
- start_engine(): connect to Wild Code School's Odyssey platform with your id and password
- correct_exercise(): correct first exercice on list based your filter
- correct_all_exercices(): correct all exercices on list based your filter
Currently, this assistant can only correct exercises published on Google Colabs notebooks (the vast majority of exercises on the platform). Exercises whose answers are in a format other than code (screenshots, Power BI .pbix files, etc.) cannot be corrected in this way.
Be careful! This project is for educational purposes, to put into practice skills acquired with helium and web scraping. It is not intended to spam the platform. Correcting other students' exercises yourself and helping them improve their code remains an excellent way to learn.
Assistant de correction sur la plateforme Odyssey de Wild Code School.
Dans le cadre de ma formation à la Wild Code School, je suis régulièrement amené à corriger les exercices de mes collègues. Cela me permet de voir d'autres codes, d'autres façons de résoudre un même problème. Mais c'est aussi une tâche qui prend beaucoup de temps. En théorie, pour chaque exercice que je rends, je dois en corriger 3.
C'est pourquoi j'ai essayé de coder un bot de correction 🤖.
Créer un agent d'intelligence artificielle qui :
- navigue dans un navigateur web jusqu'à la page de connexion de la plateforme Odyssey
- se connecte en utilisant mon login et mon mot de passe
- va sur la page de correction des exercices
- filtre les exercices à corriger selon les paramètres définis en arguments
- scrape la page de l'exercice pour récupérer les instructions et le nom de l'élève
- va sur le notebook de réponse et récupère le code
- analyse le code de l'étudiant et vérifie que les consignes ont été respectées
- génère un commentaire pour féliciter l'élève ou suggérer une amélioration si le code ne répond pas à la consigne
- écrit ce commentaire dans la case dédiée et envoie la correction
Langage : Python 🐍 (Programmation Orientée Objet)
Librairies :
- navigation web : Helium / Selenium 🌐
- web scraping : Beautiful Soup 🥣
- analyse des réponses et génération de commentaires : Gemini API 🤖
- start_engine() : se connecter à la plateforme Odyssey de Wild Code School avec votre identifiant et votre mot de passe
- correct_exercise() : corrige le premier exercice de la liste en fonction de votre filtre
- correct_all_exercices() : corrige tous les exercices de la liste en fonction de votre filtre
Actuellement, cet assistant ne peut corriger que les exercices publiés sur les cahiers Google Colabs (la grande majorité des exercices sur la plateforme). Les exercices dont les réponses sont dans un format autre que du code (captures d'écran, fichiers Power BI .pbix, etc.) ne peuvent pas être corrigés de cette manière.
Attention ! Ce projet est à but pédagogique, pour mettre en pratique les compétences acquises avec helium et le web scraping. Il n'est pas destiné à spammer la plateforme. Corriger soi-même les exercices des autres étudiants et les aider à améliorer leur code reste un excellent moyen d'apprendre.