如何用Python获取字符串的MD5值?

394 投票
10 回答
498840 浏览
提问于 2025-04-16 13:39

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

撰写回答