Partage
  • Partager sur Facebook
  • Partager sur Twitter

Api ecole direct

13 juillet 2020 à 20:13:00

Bonjour j'aimerais savoir s'il existe une api du site école direct car j'ai trouve un projet github mais je n'ai pas d’idée sur comment l'utiliser (il n'y a pas de README)
Voici le lien github: 

https://github.com/EcoleDirecte/api-login 

-
Edité par Snowy-27 13 juillet 2020 à 20:13:25

  • Partager sur Facebook
  • Partager sur Twitter
15 septembre 2020 à 18:22:36

Bonjour, je me posais la même question...

Sinon c'est pour faire quoi ?

Personnellement j'envisage de créer un bot Discord pour mon serveur et mes amis, qui puisse (via l'API ecoledirecte) nous donner les devoirs par une commande... 

  • Partager sur Facebook
  • Partager sur Twitter
10 octobre 2020 à 8:57:50

Bonjour, pour se faire je vous recommande cet api.

Voici les modules compris avec cet API :

    login: login,
    getTimeline: getTimeline,
    getMessages: getMessages,
    getNotes: getNotes,
    getCloud: getCloud,
    getClassId: getClassId,
    getClassLife: getClassLife,
    getSanctions: getSanctions,
    getHomeworks: getHomeworks,
    getDocuments: getDocuments,
    accounts: accounts

Pour créer un bot discord avec, il vous faudra utiliser JavaScript, donc pour faire un bot discord utilisez la librairie Discord.js. N'hésitez pas à aller dans les fichiers node modules pour mieux comprendre comment utiliser et appeler les fonctions. Voici un code d'example qui vous retourne les informations du compte sur la console: 

<pre class="brush: jscript;">
constapi=require("api-ecoledirecte-france")
api.login("username","password")
.then((token)=>{
console.log(token)// Useful to access to the API...
})
.catch((err)=>{
throw err
})
api.accounts("username","password")
.then((accounts)=>{
console.log(accounts)
})
.catch((err)=>{
throw err
})
</pre>

Si vous réussissez à faire un bot discord avec ça, contactez moi sur Discord : LiyudButSpookier#6681 ou alors Liyud#6681

Bye!

-
Edité par AdamQanfouh 10 octobre 2020 à 11:20:02

  • Partager sur Facebook
  • Partager sur Twitter
10 octobre 2020 à 10:39:28

Bonjour,

Merci de colorer votre code à l'aide du bouton Code

Les forums d'Openclassrooms disposent d'une fonctionnalité permettant de colorer et mettre en forme les codes source afin de les rendre plus lisibles et faciles à manipuler par les intervenants. Pour cela, il faut utiliser le bouton Code de l'éditeur, choisir un des langages proposés et coller votre code dans la zone prévue. Si vous utilisez l'éditeur de messages en mode Markdown, il faut utiliser les balises <pre class="brush: jscript;">Votre code ici</pre>.

Merci de modifier votre message d'origine en fonction.

  • Partager sur Facebook
  • Partager sur Twitter

Pas d'aide concernant le code par MP, le forum est là pour ça :)

11 octobre 2020 à 19:34:12

Bonjour AdamQanfouh, et merci pour votre réponse ! à vrai dire, j'ai entre temps commencé mon programme, que j'exécute avec nodeJS. Je n'ai donc pas utilisé l'API que vous venez de me recommander, mais je vais y jeter un coup d'oeil.

Mais je vous préviens tout de suite : le code que j'ai écrit est un carnage :p ! Je suis vraiment loin d'être un champion en javascript et n'ai que quelques bases.

J'ai donc fait ce que je pouvais avec mes connaissances et la documentation de Discord.JS.

Je vous mets donc le (pauvre :D ) code que j'ai écrit, qui récupère l'agenda : 

const Discord = require('discord.js')
const bot = new Discord.Client()

bot.on('ready', function () {
    bot.user.setActivity('-agenda', { type: 'LISTENING' })
    
})

bot.on('message', async function (message) {
    if (message.content === "-agenda") {
        //Bloc d'identification EcoleDirecte
        const EcoleDirecte = require("node-ecole-directe")
        const session = new EcoleDirecte.Session()
        const account = await session.connexion("username", "password")
        const emploiDuTemps = await account.fetchEmploiDuTemps(); // Sans date spécifiée
        const emploiDuTempsDemande = await account.fetchEmploiDuTemps(
          "2020-09-2",
          "2020-10-9"
        );
        message.reply("Il y a **" + emploiDuTempsDemande.length + "** cours entre le 2 Sept et le 9.")
        console.log(emploiDuTempsDemande[0])
        let i = 0;
        do {
            message.reply(emploiDuTempsDemande[i].start_date + " : " + emploiDuTempsDemande[i].matiere+ " avec " + emploiDuTempsDemande[i].prof + " dans " + emploiDuTempsDemande[1].salle);
            i += 1;
            
            
        } while (i != emploiDuTempsDemande.length);
        
    }
})

bot.login('tokenBotDiscord');

Je vous avait prévenu :lol:

Le problème le plus évident est ici que le bot ne sélectionne pas automatiquement les dates.

De plus, un message est écrit pour chaque matière... Encombrant je vous l'accorde...

Si vous avez donc une solution, je suis ouvert :-°.

Merci à vous

  • Partager sur Facebook
  • Partager sur Twitter
6 novembre 2020 à 7:59:51

Bonjour je reviens sur cette question j'ai finalement créé mon propre système via le Web scaping voici le lien c'est du python

<a href="https://github.com/Snowy-27/ecoledirect">Lien</a>

-
Edité par Snowy-27 6 novembre 2020 à 8:02:55

  • Partager sur Facebook
  • Partager sur Twitter
18 janvier 2021 à 9:05:27

Bonjour,

Je suis le développeur de la librairie node-ecole-directe mentionnée plus haut. @Snowy-27, tu devrais utiliser l'API privée d'ecole-directe plutôt que du scraping, ce sera beaucoup plus rapide et plus stable (il y a plus de chances pour qu'Ecole Directe change le design et le html de son site plutôt que son API). Si jamais vous avez des questions sur ma lib node-ecole-directe ou des demandes de nouvelles fonctionnalités vous pouvez rejoindre mon discord https://androz2091.fr/discord ou utiliser le github de la librairie https://github.com/Androz2091/node-ecole-directe! Bon courage pour vos bots ^^

-
Edité par Androz2091 18 janvier 2021 à 9:06:15

  • Partager sur Facebook
  • Partager sur Twitter
30 juin 2021 à 15:19:40

Bonjour,

J'essaie d'utiliser l'API EcoleDirect mais je suis bloqué car il faut un token. Quelqu'un saurais où je pourrais le trouver ?

Le lien vers la doc de l'API : https://documenter.getpostman.com/view/11643143/SztK1QKb#ecoledirecte-private-api

Edit : C'est bon j'ai trouvé, pour ceux que ça peut aider on récupère le token en utilisant le login

-
Edité par LilianCastagna 30 juin 2021 à 17:30:46

  • Partager sur Facebook
  • Partager sur Twitter
2 décembre 2021 à 21:37:43

Bonjour, je me demandais, seraisses t'il possible d'utiliser bash pour faire un "Ecole Directe TUI/CLI" ? Ou faut-il utiliser Python ou autre ?

Merci pour votre réponse

  • Partager sur Facebook
  • Partager sur Twitter
10 janvier 2022 à 11:47:57

bonjour 

LilianCastagna a écrit:

Bonjour,

J'essaie d'utiliser l'API EcoleDirect mais je suis bloqué car il faut un token. Quelqu'un saurais où je pourrais le trouver ?

Le lien vers la doc de l'API : https://documenter.getpostman.com/view/11643143/SztK1QKb#ecoledirecte-private-api

Edit : C'est bon j'ai trouvé, pour ceux que ça peut aider on récupère le token en utilisant le login

-
Edité par LilianCastagna 30 juin 2021 à 17:30:46

le token est répondue apret la conecton (voir plus bas)

TRNEEDANAME a écrit:

Bonjour, je me demandais, seraisses t'il possible d'utiliser bash pour faire un "Ecole Directe TUI/CLI" ? Ou faut-il utiliser Python ou autre ?

Merci pour votre réponse

il est posible d'utiliser bash avec l'api privez d'ecole directe avec le curl

conection:

curl 'https://api.ecoledirecte.com/v3/login.awp?v=1.8.24' \
  -H 'authority: api.ecoledirecte.com' \
  -H 'sec-ch-ua: " Not;A Brand";v="99", "Google Chrome";v="97", "Chromium";v="97"' \
  -H 'accept: application/json, text/plain, */*' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -H 'x-token: ' \
  -H 'sec-ch-ua-mobile: ?0' \
  -H 'user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36' \
  -H 'sec-ch-ua-platform: "Linux"' \
  -H 'origin: https://www.ecoledirecte.com' \
  -H 'sec-fetch-site: same-site' \
  -H 'sec-fetch-mode: cors' \
  -H 'sec-fetch-dest: empty' \
  -H 'referer: https://www.ecoledirecte.com/' \
  -H 'accept-language: fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7' \
  --data-raw $'data={\n    "uuid": "",\n    "identifiant": "usname",\n    "motdepasse": "mdp",\n    "isReLogin": false\n}' \
  --compressed

recuperation emplois du temps :($token est repondue apret la conection)

curl 'https://api.ecoledirecte.com/v3/E/9369/emploidutemps.awp?verbe=get&v=1.8.24'   -H 'authority: api.ecoledirecte.com'   -H 'sec-ch-ua: " Not;A Brand";v="99", "Google Chrome";v="97", "Chromium";v="97"'   -H 'accept: application/json, text/plain, */*'   -H 'content-type: application/x-www-form-urlencoded'   -H 'x-token: $token'   -H 'sec-ch-ua-mobile: ?0'   -H 'user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36'   -H 'sec-ch-ua-platform: "Linux"'   -H 'origin: https://www.ecoledirecte.com'   -H 'sec-fetch-site: same-site'   -H 'sec-fetch-mode: cors'   -H 'sec-fetch-dest: empty'   -H 'referer: https://www.ecoledirecte.com/'   -H 'accept-language: fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7'   --data-raw $'data={\n    "dateDebut": "2022-01-10",\n    "dateFin": "2022-01-16",\n    "avecTrous": false\n}'   --compressed








-
Edité par YuPa1 10 janvier 2022 à 11:51:38

  • Partager sur Facebook
  • Partager sur Twitter