WOMBY (OPEN SOURCE COMBO EDITOR BY ME)

MegaMozg

Новорег
Регистрация
17.10.2021
Сообщения
23
Реакции
2
Баллы
3
HEY SO I MADE THIS COMBO EDITOR SINCE SOMEONE REQUESTED IT AND IT WAS QUITE SIMPLE AND DIDNT TAKE ME MUCH TIME SO ILL JUST RELEASE THE CODE PepeBlush , ENJOY :)

Some images:
[Image: IKhlbYE.png]

[Image: EvWd1F6.png]

CODE:

Код:
import os,time, keyboard
from tkinter import filedialog, Tk
from colorama import Fore
title = '''
                                    ██╗    ██╗ ██████╗ ███╗   ███╗██████╗ ██╗   ██╗
                                    ██║    ██║██╔═══██╗████╗ ████║██╔══██╗╚██╗ ██╔╝
                                    ██║ █╗ ██║██║   ██║██╔████╔██║██████╔╝ ╚████╔╝
                                    ██║███╗██║██║   ██║██║╚██╔╝██║██╔══██╗  ╚██╔╝ 
                                    ╚███╔███╔╝╚██████╔╝██║ ╚═╝ ██║██████╔╝   ██║ 
                                     ╚══╝╚══╝  ╚═════╝ ╚═╝     ╚═╝╚═════╝    ╚═╝ 
                                \────────────────────────────────────────────────────/   
                                            Made with <3 by c.io/sc3ntedfeet       
                                  \────────────────────────────────────────────────/         
'''
global runs
runs = 0
def ask():
    print(f'| [{Fore.CYAN}##{Fore.WHITE}] Would you like to exit? (Y/N)')
    while True:
        if keyboard.is_pressed('y'):
            os._exit(1)
        if keyboard.is_pressed('n'):
            main()
def advask():
    print(f'| [{Fore.RED}##{Fore.WHITE}] Would you like to exit? (Y/N)')
    while True:
        if keyboard.is_pressed('y'):
            os._exit(1)
        if keyboard.is_pressed('n'):
            advanced()
def short():
    f = open('output.txt', 'w+')
    short = 0
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        try:
            if len(i.split(':')[1]) >= 8:
                f.write(i.replace('\n', '')+'\n')
            else:
                short+=1
        except: pass
    print(f'| [{Fore.CYAN}✓✓{Fore.WHITE}] Deleted {Fore.CYAN}{short}{Fore.WHITE} short passwords')
    ask()
  
def epup():
    print(f'| [{Fore.CYAN}!!{Fore.WHITE}] Starting...')
    f = open('output.txt', 'w+')
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        try: f.write(i.split('@')[0].replace('\n', '')+':'+i.split(':')[1].replace('\n', '')+'\n')
        except: pass
    print('| [' +Fore.CYAN + '✓✓' + Fore.WHITE + f'] Converted {combo_file} to U:P' )
    ask()
      
def ddl():
        print(f'| [{Fore.CYAN}!!{Fore.WHITE}] Starting...')
        with open(combo_name, 'r', encoding='ascii', errors='ignore') as f:
            file = f.readlines()
            lenght = len(file)
        wordList = []
        badList = []
        for line in file:
            if line in wordList:
                badList.append(line)
            else:
                wordList.append(line)
        file = open('output.txt', 'w+')
        for line in wordList:
            file.write(line)
        file.close()
        print(f'| [{Fore.CYAN}✓✓{Fore.WHITE}] Deleted {Fore.RED}{len(badList)}{Fore.WHITE}/{lenght} duplicate lines from {combo_file}')
        ask()
def dna():
    print(f'| [{Fore.CYAN}!!{Fore.WHITE}] Starting...')
    with open(combo_name,'r',encoding='utf-8',errors='ignore') as infile, \
        open('output','w',encoding='ascii',errors='ignore') as outfile:
            for line in infile:
                print(*line.split(), file=outfile)
    print(f'| [{Fore.CYAN}✓✓{Fore.WHITE}] Deleted all non-ascii charecters from {combo_file}')
    ask()
def prefix():
    print(f'| [{Fore.CYAN}!!{Fore.WHITE}] Starting...')
    f = open('output.txt', 'w+')
    pref = input(f'| [{Fore.CYAN}##{Fore.WHITE}] Enter your prefix >>> ')
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        try: f.write(pref+i[0:-1].replace('\n' ,'')+'\n'), f.flush()
        except: pass
    print(f'| [{Fore.CYAN}✓✓{Fore.WHITE}] Added {Fore.CYAN}{pref}{Fore.WHITE} to the beggining of every line')
    ask()
def suffix():
    print(f'| [{Fore.CYAN}!!{Fore.WHITE}] Starting...')
    f = open('output.txt', 'w+')
    pref = input(f'| [{Fore.CYAN}##{Fore.WHITE}] Enter your prefix >>> ')
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        try: f.write(i[0:-1].replace('\n' ,'')+pref+'\n'), f.flush()
        except: pass
    print(f'| [{Fore.CYAN}✓✓{Fore.WHITE}] Added {Fore.CYAN}{pref}{Fore.WHITE} to the end of every line')
    ask()
def dswapper():
    print(f'| [{Fore.CYAN}!!{Fore.WHITE}] Starting...')
    domain = input(f'| [{Fore.CYAN}##{Fore.WHITE}] Enter a domain >>> ')
    f = open('output.txt', 'w+')
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        try:
            one = i.split('@')[1].split(':')[0]
            swapped = i.replace(one, domain).replace('\n', '')
            f.write(swapped + '\n')
        except: pass
    print(f'| [{Fore.CYAN}✓✓{Fore.WHITE}] Swapped all domains to {Fore.CYAN}{domain}{Fore.WHITE}')
    ask()
def madder():
    print(f'| [{Fore.RED}!!{Fore.WHITE}] Starting...')
    domain = input(f'| [{Fore.RED}##{Fore.WHITE}] Enter a domain >>> ')
    f = open('output.txt', 'w+')
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        try:
            one = i.split(':')[0]
            two = i.split(':')[1]
            three = one+'@'+domain+':'+two
            f.write(three.replace('\n', '')+'\n')
        except: pass
    print(f'| [{Fore.RED}✓✓{Fore.WHITE}] Added {Fore.RED}{domain}{Fore.WHITE} to all combos')
    advask()

def advanced():
    os.system('cls')
    print(Fore.RED + title)
    options = f"""{Fore.WHITE}
| [{Fore.RED}01{Fore.WHITE}] Advanced prefix
| [{Fore.RED}02{Fore.WHITE}] Advanced suffix
| [{Fore.RED}03{Fore.WHITE}] Advanced swapper
| [{Fore.RED}04{Fore.WHITE}] Password upper
| [{Fore.RED}05{Fore.WHITE}] Mail adder (U:P -> E:P)
| [{Fore.RED}06{Fore.WHITE}] E:P Cleaner
| [{Fore.RED}07{Fore.WHITE}] U:P Cleaner
| [{Fore.RED}08{Fore.WHITE}] Normal options"""
    print(options)
    while True:
        if keyboard.is_pressed('1'):
            advprefix()
        if keyboard.is_pressed('2'):
            advsuffix()
        if keyboard.is_pressed('3'):
            advswapper()
        if keyboard.is_pressed('4'):
            pupper()
        if keyboard.is_pressed('5'):
            madder()
        if keyboard.is_pressed('6'):
            advep()
        if keyboard.is_pressed('7'):
            advup()
        if keyboard.is_pressed('5'):
            madder()
        if keyboard.is_pressed('8'):
            main()
            break
def advprefix():
    default_fixes = ['!', '@', '$', '?', '*', '#', '%']
    f = open('output.txt', 'w+')
    joe = True
    print(f"| [{Fore.RED}##{Fore.WHITE}] 1) Custom prefix - 2) Default prefix's")
    time.sleep(1)
    while joe:
        if keyboard.is_pressed('1'):
            fixes = input(f"| [{Fore.RED}##{Fore.WHITE}] Enter prefix's (seperate with commas) >>> ").replace(' ', '')
            fixi = fixes.split(',')
            for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
                for p in fixi:
                    try: f.write(p+i[0:-1].replace('\n' ,'')+'\n'), f.flush()
                    except: pass
            print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Added prefix's to combo")
            advask()
        if keyboard.is_pressed('2'):
            for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
                for p in default_fixes:
                    try: f.write(p+i[0:-1].replace('\n' ,'')+'\n'), f.flush()
                    except: pass
            print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Added prefix's to combo")
            advask()
    joe = False
def advsuffix():
    default_fixes = ['!', '@', '$', '?', '*', '#', '%']
    f = open('output.txt', 'w+')
    joe = True
    print(f"| [{Fore.RED}##{Fore.WHITE}] 1) Custom suffix - 2) Default suffix's")
    time.sleep(1)
    while joe:
        if keyboard.is_pressed('1'):
            fixes = input(f"| [{Fore.RED}##{Fore.WHITE}] Enter suffix's (seperate with commas) >>> ").replace(' ', '')
            fixi = fixes.split(',')
            for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
                for p in fixi:
                    try: f.write(i[0:-1].replace('\n' ,'')+p+'\n'), f.flush()
                    except: pass
            print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Added suffix's to combo")
            advask()
        if keyboard.is_pressed('2'):
            for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
                for p in default_fixes:
                    try: f.write(i[0:-1].replace('\n' ,'')+p+'\n'), f.flush()
                    except: pass
            print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Added suffix's to combo")
            advask()
    joe = False
def advswapper():
    default_domoains = ['yahoo.com', 'hotmail.com', 'gmail.com', 'outlook.com', 'aol.com']
    f = open('output.txt', 'w+')
    joe = True
    print(f"| [{Fore.RED}##{Fore.WHITE}] 1) Custom domain's - 2) Default domain's")
    time.sleep(1)
    while joe:
        if keyboard.is_pressed('1'):
            fixes = input(f"| [{Fore.RED}##{Fore.WHITE}] Enter domains's (seperate with commas) >>> ").replace(' ', '')
            fixi = fixes.split(',')
            for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
                for p in fixi:
                    try:
                        one = i.split('@')[1].split(':')[0]
                        swapped = i.replace(one, p).replace('\n', '')
                        f.write(swapped + '\n')
                    except: pass
            print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Added domains's to combo")
            advask()
        if keyboard.is_pressed('2'):
            for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
                for p in default_domoains:
                    try:
                        one = i.split('@')[1].split(':')[0]
                        swapped = i.replace(one, p).replace('\n', '')
                        f.write(swapped + '\n')
                    except: pass
            print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Added domains's to combo")
            advask()
    joe = False

def pupper():
    f = open('output.txt', 'w+')
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        try:
            password = i.split(':')[1]
            uppered = password[0].upper()+password[1:-1]
            f.write(i.split(':')[0] + ":" + uppered.replace('\n', '') + '\n')
        except Exception:
            pass
    print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Password's have been uppercased")
    advask()
def advep():
    f = open('output.txt', 'w+')
    unknows, no_mail = 0,0
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        if 'UNKNOWN' in i.upper():
            unknows+=1
        elif '@' not in i:
            no_mail+=1
        else:
            f.write(i)
    print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Cleaned {unknows+no_mail} lines")
    advask()
def advup():
    f = open('output.txt', 'w+')
    unknows, no_mail = 0,0
    for i in open(combo_name, 'r', encoding='ascii', errors='ignore').readlines():
        if 'UNKNOWN' in i.upper():
            unknows+=1
        else:
            f.write(i)
    print(f"| [{Fore.RED}✓✓{Fore.WHITE}] Cleaned {unknows+no_mail} lines")
    advask()
def newfile():
    global combo_name
    root = Tk()
    combo_name = filedialog.askopenfilename()
    combo_file = os.path.basename(combo_name).replace('.txt','')
    root.withdraw()
    main()

def main():
    global combo_name, combo_file, runs
    os.system('cls'), time.sleep(0.1) ,print(Fore.CYAN + title), time.sleep(0.1), os.system('cls'), print(Fore.RED + title), time.sleep(0.1), os.system('cls'), print(Fore.GREEN + title), time.sleep(0.1), os.system('cls'), print(Fore.MAGENTA + title), time.sleep(0.1), os.system('cls'), print(Fore.YELLOW + title), time.sleep(0.1), os.system('cls'), print(Fore.CYAN + title)
    options = f"""{Fore.WHITE}
| [{Fore.CYAN}01{Fore.WHITE}] E:P -{Fore.CYAN}>{Fore.WHITE} U:P
| [{Fore.CYAN}02{Fore.WHITE}] Delete duplicate lines
| [{Fore.CYAN}03{Fore.WHITE}] Delete non-ascii charecters
| [{Fore.CYAN}04{Fore.WHITE}] Prefix adder
| [{Fore.CYAN}05{Fore.WHITE}] Suffix adder
| [{Fore.CYAN}06{Fore.WHITE}] Domain swapper
| [{Fore.CYAN}07{Fore.WHITE}] New file
| [{Fore.CYAN}08{Fore.WHITE}] Short password remover
| [{Fore.CYAN}09{Fore.WHITE}] Advanced"""
    print(options)
    if runs == 0:
        root = Tk()
        combo_name = filedialog.askopenfilename()
        combo_file = os.path.basename(combo_name).replace('.txt','')
        root.withdraw()
        runs+=1
    while True:
        if keyboard.is_pressed('1'):
            epup()
        if keyboard.is_pressed('2'):
            ddl()
        if keyboard.is_pressed('3'):
            dna()
        if keyboard.is_pressed('4'):
            prefix()
        if keyboard.is_pressed('5'):
            suffix()
        if keyboard.is_pressed('6'):
            dswapper()
        if keyboard.is_pressed('9'):
            advanced()
            break
        if keyboard.is_pressed('7'):
            newfile()
        if keyboard.is_pressed('8'):
            short()
      

main()
 
Верх Низ