MD5哈希使用ftplib

时间:2016-06-01 08:25:48

标签: python python-2.7 hash md5 ftplib

>>>import ftplib 
>>>import hashlib

>>>ftp = ftplib.FTP('localhost','username','password')
>>>ftp.cwd('Server')
'250 Directory successfully changed.'
>>>m=hashlib.md5()
>>> file = open('Desktop/space.png','rb')
>>> m.update("space.png")
>>> dd = m.hexdigest()
>>> dd
'f646cdee237bd84e33485eb03c9228ac'
>>> ftp.storbinary('STOR '+dd, file)
'226 Transfer complete.'
>>> file.close()
>>> ftp.quit()
'221 Goodbye.'
>>> 

如何存储不同的十六进制数字文件?由于这个Python代码保持存储相同的十六进制数字文件。有人有任何想法吗?

1 个答案:

答案 0 :(得分:1)

"space.png"的MD5始终为f646cdee237bd84e33485eb03c9228ac。你没有解释你想要做的事情。如果您尝试使用MD5哈希值的唯一文件名,可以尝试这样的操作。

import uuid
m.update(str(uuid.uuid4()))
dd = m.hexdigest()
ftp.storbinary('STOR '+dd, file)  

uuid.uuid4()将生成一个通用唯一标识符,其MD5哈希实际上是唯一的。