php md5与python不同

时间:2018-08-21 18:11:59

标签: php python md5 md5-file

我正在尝试同时在php和python中获取md5,但我不确定为什么结果不同,我已经阅读了其他有关哈希字符串而不是文件的问题,并且还尝试了echo- n,但是出现语法错误。

Php:

<?php
  echo 'MD5 file hash : ' . md5_file('https://cdn4.buysellads.net/uu/1/8026/1533152372-laptop_purple_graph.png');
?>
  

MD5文件哈希:5e81ca561d2c1e96b5e7a2e57244c8e5

python:

import hashlib

m=hashlib.md5('https://cdn4.buysellads.net/uu/1/8026/1533152372-laptop_purple_graph.png')
print('The MD5 checksum is',m.hexdigest())
  

MD5文件哈希:52e8e2e35519e8f6da474c5e1dc6d258

1 个答案:

答案 0 :(得分:0)

在Python代码段中,您正在对https://cdn4.buysellads.net/uu/1/8026/1533152372-laptop_purple_graph.png字符串进行哈希处理,我猜这与内容不同。

您需要先获取url内容并将其传递给hashlib.md5

import urllib.request
import hashlib

contents = urllib.request.urlopen("https://cdn4.buysellads.net/uu/1/8026/1533152372-laptop_purple_graph.png").read()

m = hashlib.md5(content)
print('The MD5 checksum is',m.hexdigest())