python3 TypeError:Unicode-objects must be encode before hashing

python3環境下,利用hash值對url進行 md5加密,時報錯TypeError:Unicode-objects must be encode before hashing

原因是:

python3跟python2區別:python3下字符串爲Unicode類型,而hash傳遞時需要的是utf-8類型,因此,需要類型轉換

調用函數時,將url進行類型轉換

def get_md5(url):

m = hashlib.md5()

m.update(url)

return m.hexdigest()


if __name__ =='__main__':

print(get_md5("http://jobbole.com".encode("utf-8"))) 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章