这篇文章原来在我盘里存了好久了~    16年9月的。   这 Python的长进没多少啊。现在都17。4了

哎~~

 

Python之POST提交解密MD5

用易语言写出来md5解密软件后感觉一点成就感都没有。 用Python实现就是爽多了,虽说它也很简单,不然我也不会这么短时间会。

显而易见,要解密MD5首先要解决的问题就是提交md5。这就要接触Python的post了。

【首先,抓包。祭出神奇-firebug】

我们打开firebug,再打开我们的md5解密网站,然后随便输入一个md5来解密,得到他上传的表单,我们截下来改包。这是我截下来的:

__VIEWSTATE /wEPDwUKMTM4NTE3OTkzOQ9kFgJmD2QWAgIFDxYEHgVjbGFzcwULdGlwIHN1Y2Nlc3MeCWlubmVyaHRtbAWRATxpIGNsYXNzPSJpY29uZm9udCI+JiN4ZTY5MTs8L2k+PHAgY2xhc3M9ImluZm8iPuaCqOafpeivoueahOWtl+espuS4suaYr+KAnDxlbT5hYzU5MDc1Yjk2NGIwNzE1PC9lbT7igJ0s6Kej5a+G55qE57uT5p6c5Li64oCcPGVtPjEyMzwvZW0+4oCdITwvcD5kZPIZDYK0nljm9jNu3+z+aROsKjit

__VIEWSTATEGENERATOR  CA0B0334

__EVENTVALIDATION       /wEWAwLkuLOgDALigPTXCQKU9f3vAm7mreoHjgJqcpJYT7YZ4aInh4XU

key  ac59075b964b0715

jiemi       MD5解密

排列过后:

'__VIEWSTATE':'/wEPDwUKMTM4NTE3OTkzOQ9kFgJmD2QWAgIFDxYEHgVjbGFzcwULdGlwIHN1Y2Nlc3MeCWlubmVyaHRtbAWRATxpIGNsYXNzPSJpY29uZm9udCI+JiN4ZTY5MTs8L2k+PHAgY2xhc3M9ImluZm8iPuaCqOafpeivoueahOWtl+espuS4suaYr+KAnDxlbT5hYzU5MDc1Yjk2NGIwNzE1PC9lbT7igJ0s6Kej5a+G55qE57uT5p6c5Li64oCcPGVtPjEyMzwvZW0+4oCdITwvcD5kZPIZDYK0nljm9jNu3+z+aROsKjit',

'__VIEWSTATEGENERATOR':'CA0B0334',

'__EVENTVALIDATION':'/wEWAwLkuLOgDALigPTXCQKU9f3vAm7mreoHjgJqcpJYT7YZ4aInh4XU',

'key':md5,

'jiemi':'MD5解密'

 

不难看出这里面有五个参数,但是有用的就是‘key’这个参数。我们只要改动他就可以得到想要的效果。

【然后我们搭建一个data用来发送】

data={

'__VIEWSTATE':'/wEPDwUKMTM4NTE3OTkzOQ9kFgJmD2QWAgIFDxYEHgVjbGFzcwULdGlwIHN1Y2Nlc3MeCWlubmVyaHRtbAWRATxpIGNsYXNzPSJpY29uZm9udCI+JiN4ZTY5MTs8L2k+PHAgY2xhc3M9ImluZm8iPuaCqOafpeivoueahOWtl+espuS4suaYr+KAnDxlbT5hYzU5MDc1Yjk2NGIwNzE1PC9lbT7igJ0s6Kej5a+G55qE57uT5p6c5Li64oCcPGVtPjEyMzwvZW0+4oCdITwvcD5kZPIZDYK0nljm9jNu3+z+aROsKjit',

'__VIEWSTATEGENERATOR':'CA0B0334',

'__EVENTVALIDATION':'/wEWAwLkuLOgDALigPTXCQKU9f3vAm7mreoHjgJqcpJYT7YZ4aInh4XU',

'key':md5,

'jiemi':'MD5解密'

}

【用上节课的requests命令中的post】

a=requests.post(b,data=data) #发data的内容送到URL(b)

【正则取出我们想要的】

text1=re.findall('解密的结果为“<em>(.*?)</em>',text) #在text中取相应内容放到text1中

【然后一条一条打印(显然我们这里只可能有一条)】

因为不研究正则,这个命令的返回值意思因该就像E中的正则.取全部吧! 那个的返回值就是一个数组,在Python中叫list。 我们还是要一个一个的取出来。