无法从服务器获取哈希值

时间:2017-10-04 08:37:42

标签: python hash encoding

我目前在从服务器获取哈希时遇到问题。

TypeError: Unicode-objects must be encoded before hashing

这是错误:

data = urllib2.urlopen(url) #request
hash = hashlib.md5(data.read().decode('utf-8')).hexdigest() # 

实际上我试图用encode()替换decode(),但是它给出了另一个错误:

AttributeError: 'bytes' object has no attribute 'encode'

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

只需删除.decode('utf-8')

为了理解:read()的{​​{1}}返回字节。 urlopen()会将字节转换为unicode字符串。并且decode()需要字节作为输入。