如何用Python获取字符串的MD5值?
在Flickr的API文档中,你需要找到一个字符串的MD5值来生成[api_sig]
这个值。
那么,如何从一个字符串生成MD5值呢?
Flickr给出的例子是:
字符串:000005fab4534d05api_key9a0554259914a86fb9e7eb014e4e5d52permswrite
MD5值:a02506b31c1cd46c2e0b6380fb94eb3d
10 个回答
21
你可以在字符串前面加一个 b
字符:
import hashlib
print(hashlib.md5(b"Hello MD5").hexdigest())
print(hashlib.md5("Hello MD5".encode('utf-8')).hexdigest())
输出:
e5dadf6524624f79c3127e247f04b548
e5dadf6524624f79c3127e247f04b548
793
你可以这样做:
Python 2.x
import hashlib
print hashlib.md5("whatever your string is").hexdigest()
Python 3.x
import hashlib
print(hashlib.md5("whatever your string is".encode('utf-8')).hexdigest())
不过在这种情况下,使用这个方便的Python模块来与Flickr API互动可能会更好:
... 它会帮你处理认证的问题。
关于 hashlib 的官方文档
297
对于Python 2.x版本,可以使用Python的hashlib库。
import hashlib
m = hashlib.md5()
m.update("000005fab4534d05api_key9a0554259914a86fb9e7eb014e4e5d52permswrite")
print m.hexdigest()
输出结果是:a02506b31c1cd46c2e0b6380fb94eb3d