AUTO Crée le fichier zip
This commit is contained in:
parent
2d249ab7b8
commit
8a6a8b3a0d
38
auto.py
38
auto.py
|
@ -1,9 +1,11 @@
|
|||
# Scipt permettant d'automatiser les TP
|
||||
|
||||
import os
|
||||
import zipfile
|
||||
|
||||
base = './'
|
||||
rendeurs = [('BEAUSSART Jean-loup', 'Beaussart'), ('PREUD\'HOMME Geoffrey', 'PreudHomme')]
|
||||
rendeurs = [('BEAUSSART Jean-loup', 'Beaussart'),
|
||||
('PREUD\'HOMME Geoffrey', 'PreudHomme')]
|
||||
|
||||
|
||||
def chemin(semestre, tp=None):
|
||||
|
@ -32,26 +34,48 @@ def tpProchain():
|
|||
def tpEnCours():
|
||||
return tpProchain() - 1
|
||||
|
||||
|
||||
def fichiersTp(semestre, tp):
|
||||
return fichiersPythons
|
||||
# TODO .gitignore
|
||||
# TODO .tpfiles
|
||||
return fichiersPythons(semestre, tp)
|
||||
|
||||
|
||||
def fichiersPythons(semestre, tp):
|
||||
chem = chemin(semestre, tp)
|
||||
return [os.path.join(chem, i) for i in os.listdir(chem) if os.path.isfile(os.path.join(chem, i))]
|
||||
return [i for i in os.listdir(chem) if i.endswith('.py') and os.path.isfile(os.path.join(chem, i))]
|
||||
|
||||
|
||||
def rendeur(semestre, tp):
|
||||
for i in fichiersPythons(semestre, tp):
|
||||
texte = open(i, 'r').read()
|
||||
texte = open(os.path.join(chemin(semestre, tp), i), 'r').read()
|
||||
rend = ''
|
||||
rendeurMax = 500
|
||||
for j in range(len(rendeurs)):
|
||||
pos = texte.find(rendeurs[j][0])
|
||||
if pos < rendeurMax:
|
||||
pos = texte.find(rendeurs[j][0]) # TODO Gérer \'
|
||||
if pos < rendeurMax and pos >= 0:
|
||||
rendeurMax = pos
|
||||
rend = j
|
||||
if rend != '':
|
||||
return rend
|
||||
return None
|
||||
|
||||
print('Rendeur du TP en cours :', rendeurs[rendeur(semestreEnCours(), tpEnCours())][0])
|
||||
|
||||
def personnesSurTP(semestre, tp):
|
||||
rend = rendeur(semestre, tp)
|
||||
personnes = [i[1] for i in rendeurs]
|
||||
personnes.remove(rendeurs[rend][1])
|
||||
personnes = [rendeurs[rend][1]] + personnes
|
||||
return personnes
|
||||
|
||||
def creerZip(semestre, tp):
|
||||
personnes = personnesSurTP(semestre, tp)
|
||||
nomDossier = '_'.join(personnes)
|
||||
nomZip = 'tp%d_%s.zip' % (tp, ('_'.join(personnes).lower()))
|
||||
chem = chemin(semestre, tp)
|
||||
fichierZip = zipfile.ZipFile(os.path.join(chem, nomZip), 'w')
|
||||
for f in fichiersTp(semestre, tp):
|
||||
fichierZip.write(os.path.join(chem, f), os.path.join(nomDossier, f))
|
||||
fichierZip.close()
|
||||
|
||||
creerZip(semestreEnCours(), tpEnCours())
|
||||
|
|
Reference in a new issue