diff --git a/main.py b/main.py index 4489705..55fa9e6 100644 --- a/main.py +++ b/main.py @@ -1,85 +1,10 @@ ''' - - Pierre Cadart Script pour NAS sous Linux Utilise un accès en FTP - -Organisation du programme (modules) finale: - - - |----------| |-------------| - | | | [piexel.py] | - | | | | - | accès | | accès | - | FTP | | API | - | | | | - |----------| |-------------| - \ / - |--------------| - | | - | arborescence | - | | - |--------------| - | - | <-- échange par liste d'actions ([actions.py]) sur des files ([file.py]) - | - |------------| |------------| |------------| - | | | | | | - | sauvegarde |----| code |-->| logs | - | | | de màj | | | - |------------| | | | | - |------------| |------------| - ^ / - | / - |------------|L |------------| - | [main.py] | | | - | main |<--| config | - | | | | - |------------| |------------| - | - | - |------------| - | | - | accès | - | manuel | - | | - |------------| - - - - -après avoir listé les fichiers avec les bonnes extensions localement, et les fichiers de la BDD, on effectue: -(1) transformation des dossiers en fichier + sous-titres - * parcours des 'file' de l'api qui sont des dossiers - - dans le cas d'un seul fichier video, on effectue automatiquement l'opération - - dans le cas de 0 fichiers videos, c'est soit: - - le dossier à changé de nom: - - on essaye de trouver son nouveau nom, en comparant les noms filtrés pour ne contenir que des lettres et l'année entre crochet - - le dossier a été déplacé: - - on peut chercher dans l'arborescence complète si le dossier existe - - dans le cas de plusieurs fichiers, on ne fait rien, mais on le met dans les logs, pour que cela soit fait manuellement - - lorsque l'on a un dossier local associé: - - on ajoute le fichier vidéo - - on ajoute les sous-titres à côté si la langue est disponible dans le nom -2) fichiers déplacés et/ou renommés - * parcours des fichiers dans l'API mais non dans le FTP - - cherche un renommage simple, par réduction des noms aux lettres seules et année - - sinon, recherche parmis tous les fichiers locaux non référencés les noms proches (même méthode) - - les fichiers restants (côté api) sont maintenant 'broken_link' -3) fichiers restants localement - * parcours des fichiers locaux restant (non dans un sous-dossier), - - pour chaque fichier, essaye de trouver le film/la série associé - - si déjà disponible, et broken_link, on complète simplement - - si non disponible, on ajoute le fichier - -à supprimer: - -exclure: reportages/documentaires - ''' import posixpath @@ -203,7 +128,7 @@ def visit_server(domain, conf, api): print('unreferenced:','\n'.join(str(f) for f in Lunref)) print('\n'*3) print('unreferenced titles:', '\n'.join([f.title for f in Lunref])) - """ + # Put les renommages / déplacements i = 0 for filmApi, filmLoc in Lrelink: @@ -268,8 +193,9 @@ def visit_server(domain, conf, api): print(e) print('film '+film.title+' not posted') raise Exception('end') - """ + # Marque comme broken les films référencés non présents + # TODO: màj des broken_links ''' i = 0 for film in Lmissing: