Guest User

leet speak converter

a guest
Jan 26th, 2013
519
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.33 KB | None | 0 0
  1. #Written by Bazju (backtrack-linux.org/forums) 26 Jan 2013
  2. import re
  3.  
  4.  
  5. def mod_list(word, s_name):
  6.     check_spec = ['.', '^', '$', '*', '+', '?', '*?', '+?', '??', \
  7.                         '\\', '|', '\A', '\b', '\B', '\d', '\D', '\s', \
  8.                         '\S', '\w', '\W', '\Z', ']', '[', '(', ')']
  9.  
  10.     leet_dic = {'a': ('@', '4', '^', 'A'), \
  11.                 'b': ('8', 'B'), \
  12.                 'c': ('[(', '<', 'C'), \
  13.                 'd': ('D'), \
  14.                 'e': ('3', 'E'), \
  15.                 'f': ('ph', 'p#', 'F'), \
  16.                 'g': ('6', '9', 'G'), \
  17.                 'h': ('#', 'H'), \
  18.                 'i': ('!', '1', 'I'), \
  19.                 'j': ('J'), \
  20.                 'k': ('K'), \
  21.                 'l': ('1', 'L'), \
  22.                 'm': ('M'), \
  23.                 'n': ('N'), \
  24.                 'o': ('0', 'O'), \
  25.                 'p': ('P'), \
  26.                 'q': ('Q'), \
  27.                 'r': ('R'), \
  28.                 's': ('$', '5', 'S'), \
  29.                 't': ('+', '7', 'T'), \
  30.                 'u': ('U'), \
  31.                 'v': ('V'), \
  32.                 'w': ('W'), \
  33.                 'x': ('X'), \
  34.                 'y': ('Y'), \
  35.                 'z': ('2', 'Z'),
  36.                 'elite': ('1337', '133+', '133t', '1eet', '1ee+', 'l337', 'l33+', 'l33t', 'leet', \
  37.                           'lee+'),
  38.                 'hacker': ('haxx0r', 'haxX0r'), \
  39.                 'fucked': ('fuxx0red', 'fuxX0red'), \
  40.                 'fucker': ('fuxX0r', 'fuxx0r'), \
  41.                 'fuck': ('fuq', 'fuxX0r', 'fuxx0r', 'fsck'), \
  42.                 'cum': ('spooge', 'splooge', 'sp00ge'), \
  43.                 'boobs': ('h00trz', 'hooters'), \
  44.                 'fear': ('phjear', 'phear', 'ph33r', 'pheer', 'phj34r'), \
  45.                 'technique': ('tekniq', 't3kniq'), \
  46.                 'the': ('teh', 't3h'), \
  47.                 'access': ('haxXess', 'h4xX3s5', 'h4xX35'), \
  48.                 'porn': ('pron', 'pr0n', 'prawn'), \
  49.                 'lamer:': ('llama', '11ama'), \
  50.                 'tool': ('t00l', '700l'), \
  51.                 'newbie': ('n00b', 'newb', 'n3wb'), \
  52.                 'own': ('pwn', 'pown', 'p3wn', 'pwnz'), \
  53.                 'owned': ('pwned', 'pwnd', 'pwnt', 'pwn3d'), \
  54.                 'ownage': ('pwnage', 'pwning', 'pwner'), \
  55.                 'or': ('0rZ', 'OrZ'), \
  56.                 'er': ('0rZ', 'OrZ'), \
  57.                 'schooled': ('schooled', 'sk00l3d'), \
  58.                 'you': ('j00', 'joo'), \
  59.                 'hi': ('j0', 'jO'), \
  60.                 'later': ('l8a', 'l8r'), \
  61.                 'sex': ('sex0r', 'sexor', 'sexxor', 'sexXor'), \
  62.                 'sucks': ('sux', 'suxx0r', 'suxX0r'), \
  63.                 'rocks': ('r0x0r', 'r0x', 'rox', 'roxX0r', 'r0xX0r'), \
  64.                 'yay': ('w00t', 'woot'), \
  65.                 'you': ('u', 'U'), \
  66.                 'are': ('r', 'R'), \
  67.                 'why': ('y', 'Y'), \
  68.                 'be': ('b', 'B'), \
  69.                 'see': ('c', 'C'), \
  70.                 'okay': ('k', 'K'), \
  71.                 'ea': ('ee', '33', '3e', 'e3'), \
  72.                 'ee': ('ea', '34', '3a', 'e4'), \
  73.                 'love': ('luv', 'lov')}
  74.  
  75.     new_list=[]
  76.  
  77.     for dic in leet_dic:
  78.         for char in leet_dic[dic]:
  79.             wordx = re.subn(dic, char, word)
  80.             s=0
  81.  
  82.             for x in range(0, wordx[1]):
  83.                 s+=1
  84.                 check = re.sub(dic, char, word, count=s)
  85.                 if len(check) != 0:
  86.                     new_list.append(check)
  87.  
  88.             for spec in check_spec:
  89.                 if spec in char:
  90.                     char = char.replace(spec, ('\\'+spec))
  91.  
  92.             for x in range(1, wordx[1]):
  93.                 s-=1
  94.                 check = re.sub(char, dic, wordx[0], count=s)
  95.                 if len(check) != 0:
  96.                     new_list.append(check)
  97.  
  98.     with open(s_name, 'a') as f:
  99.         f.write(''.join(new_list))
  100.        
  101.  
  102.    
  103.  
  104.  
  105. def leet_con(f_name):
  106.     with open(f_name[0], 'r') as f:
  107.         for word in f:
  108.             mod_list(word, f_name[1])
  109.  
  110.     with open(f_name[1], 'r') as f:
  111.         for word in f:
  112.             mod_list(word, f_name[1])
  113.            
  114.            
  115.  
  116.  
  117. def get_set():
  118.     f_name = [raw_input('Open file: ')]
  119.     f_name.append(raw_input('Save_as: '))
  120.  
  121.     leet_con(f_name)
  122.  
  123. #=====Get Started======
  124. if __name__ == '__main__':
  125.     get_set()
Add Comment
Please, Sign In to add comment