• [^] # Re: Questions

    Posté par (site web personnel) . En réponse à la dépêche Katal, catalogue de fichiers. Évalué à 4. Dernière modification le 26 octobre 2015 à 16:50.

    Merci pour les encouragements :

    • le programme calcule un checksum de chaque fichier (ce que j'appelle son hashid), et il conserve cette somme de contrôle dans la base de données. J'utilise SHA256 (confer la fonction hashfile64()). Si tu ajoutes des fichiers vers le répertoire source, le checksum de chaque fichier source est d'abord comparé à ceux stockés dans la base de données, ce qui évite les doublons. Dans les faits, ça n'évite pas que deux images identiques mais encodées différemment se retrouvent dans le répertoire de destination.
    • j'ai testé le programme dans tous les sens, mais hélas toujours sur les mêmes fichiers; pas de limitation connue. J'ai tenu compte des spécificités de certains systèmes de fichiers (cf get_disk_free_space(), remove_illegal_characters()) et de la console de Windows (cf la fin de remove_illegal_characters()).
    • s'agissant des alternatives, je n'en connais pas mais avec un bon desktop manager, un système de fichiers avec métadonnées et quelques programmes spécifiques, il y a sans doute moyen de mieux faire. Mon projet n'est intéressant que si tu préfères la ligne de commande à tout le reste et si tu veux quelque chose de rapide à installer/utiliser sur des systèmes Linux/OSX/Windows.
    • pour le "montage", je prie saint-Python de savoir faire avec... mais je n'ai pas essayé. Mon code étant relativement "de haut niveau" (shutils), ça devrait passer.
    • la base de données est du sqlite3, la seule à être disponible (à ma connaissance) out-of-the-box avec Python.
    • la prochaine étape : je me suis dis que si quelqu'un d'autre était intéressé, je rendrais Katal résistant aux arrêts intempestifs; autrement dit, il serait capable de reprendre une tâche là où il l'avait laissée. C'est un peu compliqué pour moi mais c'est surtout complexe et donc chronophage.

    Si tu es intéressé, fais-le-moi savoir !

    Trust the Python !