axios
Python library and CLI to access the school electronic register from Axios
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