Python Tools for Concours
Few Python tools to manage "concours".
- Import CSV file with students from "welcome desk"
- Generate password for each student
- Generate a coupon (JSON/HTML/PDF) for each student which provides login (SCEI) / password
- Create Test Takers / Group in TAO Testing
- Create Deliveries
- Collect Results
Documentation
Installing
$ pip install -i https://test.pypi.org/simple/ tao-rest-client
$ pip install -r requirements.txt
Running
cd src
cp config.cfg.sample config.cfg
# edit config.cfg to match your needs
# in [tao] section, you can configure:
# - TAO hostname/port
# - username/password of the user that will make REST API calls
# in [concours] section, you can define :
# - usb_key_dir -- the expected mount path of the USB key (where files will be loaded and saved)
# - output_dir -- same as above (they should be merged in a next release)
# - topic [english|digital] -- to configure the tool for english/digital exam room
# - current_date -- to override the exam date (default: today)
python wui.py
For PDF generation of coupons, you will need a web browser (only tested with Chrome at the moment). Currently, the path to the web browser is hard-coded in src/pdftools.py
(you can seek for PATH_TO_CHROME_EXE
variable).
Schedules (track/timeslot/duration) are hard-coded in src/exam.py
at the moment.
Configuration variables can also be overridden using environnement variables, for instance:
export CONCOURS_TAO_HOST=193.8.8.8
export CONCOURS_TAO_PORT=443
export CONCOURS_TAO_USERNAME=beedle
export CONCOURS_TAO_PASSWORD=Th3B@4d
export CONCOURS_CONCOURS_TOPIC=english
export CONCOURS_CONCOURS_CURRENT_DATE=2021-04-16
./wui.py