Nettoyage de main.py

This commit is contained in:
redstorm 2017-04-25 00:34:45 +02:00
parent ca7b395780
commit defcc3d618

80
main.py
View file

@ -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: