· 8 years ago · Dec 30, 2017, 01:02 AM
1import requests
2import multiprocessing.pool
3import random
4import time
5import sys
6from random import randint
7import string
8
9class Cracker:
10 """An speedy advanced scanner"""
11 def __init__(self):
12 chris = 'god'
13
14
15 def __login(self, userpass:list):
16 while True:
17 headers = {"x-client-version": "12a510d",
18 "x-client-type": "web",
19 "content-type": "application/json",
20 "accept": "application/json",
21 "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36",
22 "referer": "https://www.caffeine.tv/sign-up",
23 "origin": "https://www.caffeine.tv"}
24 ran = str(randint(100000, 999999))
25 username = ''.join(random.choice(string.ascii_uppercase) for _ in range(6)) + ran
26 email = username + '@gmail.com'
27 z = requests.post('https://api.caffeine.tv/v1/account', json={'account': {"username":username,"email":email,"password":"fuckschool123"}}, headers=headers)
28 #print(z.text)
29 if 'credentials' in z.text:
30 huh = "f"
31 #print('[Succesfully Created Account] ' + username + ':' + 'fuckschool123' + ':' + email)
32 else:
33 #print(z.text)
34 continue
35 headers = {"authorization":'Bearer ' + z.text.split('"access_token":"')[1].split('"')[0]}
36 first = z.text.split('"caid":"')[1].split('"')[0]
37 second = 'CAIDAC7E725A36CD47C493BA2494C0955FB4'
38 url = 'https://api.caffeine.tv/v1/users/' + first + '/follow/' + second
39 v = requests.post(url, headers=headers)
40 #print(v.text)
41 if not 'errors' in v.text:
42 print('[Succesfully Followed]')
43
44 with open('accs.txt', 'a') as f:
45 f.write(username + ':' + 'fuckschool123' + ':' + email + '\n')
46
47 def start(self, combos:list, threads:int):
48 # creates a pool of workers
49 p = multiprocessing.pool.ThreadPool(processes=threads)
50 # calls login with the userpass as parameter
51 p.map(self.__login, combos)
52 # closes the multi-threaded processes
53 p.close()
54
55if __name__ == '__main__':
56 # instantiates cracker
57 cracker = Cracker()
58 # assigns combolist
59 combos = ['f']
60 for x in range(100):
61 combos.append('4')
62 # asks user for number of threads wanted.
63 threads = 3
64 # starts multithreading process
65 cracker.start(combos=combos, threads=threads)