python md5加密
今天在玩百度翻译开放平台的时候,使用了其中一个Demo,代码如下,有一段关于md5的操作没看懂,于是就百度了下,发现这是一个关于加密的模块。#/usr/bin/env python#coding=utf8import httplibimport md5import urllibimport randomappid = '**************' #你的...
·
今天在玩百度翻译开放平台的时候,使用了其中一个Demo,代码如下,有一段关于md5的操作没看懂,于是就百度了下,发现这是一个关于加密的模块。
#/usr/bin/env python
#coding=utf8
import httplib
import md5
import urllib
import random
appid = '**************' #你的appid
secretKey = '***************' #你的密钥
httpClient = None
myurl = '/api/trans/vip/translate'
q = 'apple'
fromLang = 'en'
toLang = 'zh'
salt = random.randint(32768, 65536)
sign = appid+q+str(salt)+secretKey
m1 = md5.new()
m1.update(sign)
sign = m1.hexdigest()
myurl = myurl+'?appid='+appid+'&q='+urllib.quote(q)+'&from='+fromLang+'&to='+toLang+'&salt='+str(salt)+'&sign='+sign
try:
httpClient = httplib.HTTPConnection('api.fanyi.baidu.com')
print type(httpClient)
httpClient.request('GET', myurl)
#response是HTTPResponse对象
response = httpClient.getresponse()
response = u'response'
print response.read()
except Exception, e:
print e
finally:
if httpClient:
httpClient.close()
md5是摘要算法种的一种。摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。
经过分析得出下面的注释
m1 = md5.new() #创造一个md5对象。
m1.update(sign) #添加加密对象sign。
sign = m1.hexdigest() #进行加密
至此,关于md5加密的内容就结束了。
关于百度的这个demo,翻译返回的语言是中文的话,会显示为Unicode编码,我现在也没想到什么好的方法。
更多推荐
已为社区贡献2条内容
所有评论(0)