axios

Command line utility to access https://family.axioscloud.it


Keywords
school
License
Apache-2.0
Install
pip install axios==0.4.0

Documentation

axios

Python library and CLI to access the school electronic register from Axios

PyPI Changelog Tests License

Command line utility to access https://family.axioscloud.it

Installation

Install this tool using pip:

pip install axios

Usage

First, set the environment variables:

export AXIOS_CUSTOMER_ID="12345678909"
export AXIOS_USERNAME="1234"
export AXIOS_PASSWORD="a-secret-i-will-not-share"
export AXIOS_STUDENT_ID="4567"

To list latest grades, run:

$ axios grades list
                                                                                        Grades

  Data         Materia                      Tipo      Voto   Obiettivi   Commento                                                                                Docente
 ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
  2022-12-06   TECNOLOGIA e INFORMATICA     Scritto   7.5                                                                                                        Pavarin Maria Luisa
  2022-12-02   MATEMATICA                   Scritto   7,75               Verifica sugli insiemi                                                                  Micela Silvia
  2022-12-01   ARTE E IMMAGINE              Grafico   10                 Tav.3 figura e sfondo                                                                   Pagliarulo Veronica
  2022-12-01   ARTE E IMMAGINE              Grafico   7/8                Tav.1 Punto e linea                                                                     Pagliarulo Veronica
  2022-11-30   MUSICA                       Orale     7                  Verifica di carattere teorico. Interrogazione su tutto il programma svolto finora.      Cataldo Francesco
  2022-11-24   ITALIANO                     Scritto   8.5                Fonologia e ortografia                                                                  Rapalino Lara
  2022-11-23   TECNOLOGIA e INFORMATICA     Grafico   6.5                                                                                                        Pavarin Maria Luisa
  2022-11-23   MUSICA                       Orale     7,5                Verifica di carattere teorico. Interrogazione su tutto il programma svolto finora.      Cataldo Francesco
  2022-11-18   MATEMATICA                   Grafico   8,5                Verifica sulle equivalenze e le operazioni con le misure del tempo                      Micela Silvia
  2022-11-16   TECNOLOGIA e INFORMATICA     Grafico   7                                                                                                          Pavarin Maria Luisa
  2022-11-10   ARTE E IMMAGINE              Grafico   8                  Poster per la pace                                                                      Pagliarulo Veronica
  2022-11-09   LINGUA STRANIERA INGLESE     Scritto   8,5                Test units 1 e 2                                                                        Barbero Daniela

Defaults to current year and period.

To select a different year or period, run:

# allowed values: FT01 and FT02
axios --period FT02 grades list 

# the year classes started
axios --year 2021 grades list 

# you can combine them, of course
axios --year 2021 --period FT01

To format the output in JSON or NDJSON, run:

$ axios --output-format json grades list
[
    {
        "date": "2023-03-23",
        "subject": "ARTE E IMMAGINE",
        "kind": "Grafico",
        "value": "9",
        "teacher": "Pagliarulo Veronica",
        "comment": "Concorso LAV"
    },
    {
        "date": "2023-03-20",
        "subject": "STORIA",
        "kind": "Orale",
        "value": "10",
        "teacher": "Novelli Cristina",
        "comment": ""
    }
]

$ axios --output-format ndjson grades list
{"date": "2023-03-23", "subject": "ARTE E IMMAGINE", "kind": "Grafico", "value": "9", "teacher": "Pagliarulo Veronica", "comment": "Concorso LAV"}
{"date": "2023-03-20", "subject": "STORIA", "kind": "Orale", "value": "10", "teacher": "Novelli Cristina", "comment": ""}

For help, run:

axios --help

You can also use:

python -m axios --help

Development

To contribute to this tool, first checkout the code. Then create a new virtual environment:

cd axios
python -m venv venv
source venv/bin/activate

Now install the dependencies and test dependencies:

pip install -e '.[test]'

To run the tests:

pytest