Problème de lecture d'un fichier
Bonjour,
J'ai un fichier texte contenant des hash "hash.txt" ligne par ligne (j'ai enlever les sauts de lignes donc tout est à la suite), et j'ai besoin pour un autre script de lire ces lignes une par une.
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| import hashlib
path = ['Fichiers\Informationstte.png', 'Fichiers\image\InformationsRH.png', 'Fichiers\Iso\debian-8.7.1-amd64-CD-1.iso', ]
for p in path:
with open(p, 'rb') as afile:
file = afile.read()
hashlib.md5().update(file)
m = hashlib.md5(file).hexdigest()
print(m)
for p in path:
with open("hash.txt") as f:
for line in f:
l = (line.rstrip())
if m == l:
print("Le fichier " + p + " n a pas ete modifie")
else:
print("Le fichier " + p + " a ete modifie") |
En fait ceci calcul le hash des fichiers, et le compare avec ceux qui sont marqués dans le fichier texte.
Voici le résultat :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| >>>10e05bb6f2edd3ce5a36acde1c82c0f8
>>>e2563b855b6e28cac38e05559c5dfb7d
>>>eb8bdd4d233fab9ab980c4ee3ac0ae4a
>>>Le fichier Fichiers\Informationstte.png a ete modifie
>>>Le fichier Fichiers\Informationstte.png a ete modifie
>>>Le fichier Fichiers\Informationstte.png n a pas ete modifie
>>>Le fichier Fichiers\image\InformationsRH.png a ete modifie
>>>Le fichier Fichiers\image\InformationsRH.png a ete modifie
>>>Le fichier Fichiers\image\InformationsRH.png n a pas ete modifie
>>>Le fichier Fichiers\Iso\debian-8.7.1-amd64-CD-1.iso a ete modifie
>>>Le fichier Fichiers\Iso\debian-8.7.1-amd64-CD-1.iso a ete modifie
>>>Le fichier Fichiers\Iso\debian-8.7.1-amd64-CD-1.iso n a pas ete modifie |
On peux voir que les hash calculés sont différents donc ça c'est bon, mais ca me prend pour chaque hash les trois chemins, je me doute qu'il y a un problème avec ma boucle For, mais je ne vois pas comment modifier ceci.
Une petite idée?
Merci d'avance!