python多进程爆破验证码

推荐在linux环境下使用,找到之后可以使用信号量signal,Ctrl + C可以退出所有进程.

import os
import string
from multiprocessing import Pool
import random
import hashlib
import signal

signal.signal(signal.SIGINT , signal.SIG_DFL)
signal.signal(signal.SIGHUP , signal.SIG_DFL)

def md5(data):
    return hashlib.md5(data).hexdigest()

def getRandomStr():
    return "".join(random.sample(string.ascii_letters + string.digits ,8))

EXIT_FLAG = False

def force(x):
    global EXIT_FLAG
    # print(x)
    print(os.getpid())
    while not EXIT_FLAG:
        data = getRandomStr()
        s = md5(data.encode())
        if s[-6:] == "a5ec49":
            print(data,s)
            EXIT_FLAG = True
    return True

if __name__ == '__main__':
    with Pool(5) as p:
        p.map(force , range(5))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 多进程PHP脚本实现海量数据转移总结 由于项目的新版本有大改动,需求是将一些旧表的数据转移到新表来,于是使用PHP...
    大佬Sam阅读 2,662评论 0 0
  • 哈哈哈,标题有点长,但我们依然由浅入深。 # 通常情况下需要我们的程序同时进行多个任务,并发运行。由于cpu的执行...
    Nietzsche_LiBai阅读 4,453评论 0 6
  • 文/mokiy 1 太阳好猛烈啊。它已经把这土地晒得干裂了。它下一步是不是要把人的皮肤也晒得干裂呀。 人们的嘴唇已...
    南七子阅读 1,774评论 2 0
  • 宝宝日记-0703 小调皮鬼 宝宝日记——0624 穿上姑姑买的新衣服,纤体修长,目光坦然左手轻抚外婆腿腿,右手轻...
    阿阪的小事阅读 2,880评论 1 2
  • 来北京工作以后,山大就成了我真正意义上的故乡——你想到的时候会很温暖,但你平时根本无暇去想;你明明还常回去,但你知...
    皓语阅读 1,352评论 0 0