├── requirements.txt ├── Penyimpanan └── Youtube.json ├── LICENSE ├── README.md └── Run.py /requirements.txt: -------------------------------------------------------------------------------- 1 | requests_toolbelt 2 | requests 3 | cython 4 | rich 5 | -------------------------------------------------------------------------------- /Penyimpanan/Youtube.json: -------------------------------------------------------------------------------- 1 | { 2 | "Link": "https://youtu.be/05dvOzGNc7o" 3 | } -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2023 Rozhak 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # TikFuel - Free TikTok Followers Tool 2 | 3 | ![TikFuel Logo](https://github.com/user-attachments/assets/1a378ade-be03-4a06-a96a-1a16c7aa8b9f) 4 | 5 | **TikFuel** adalah alat sederhana yang memungkinkan Anda mendapatkan pengikut TikTok secara gratis tanpa perlu login. Proyek ini dibuat pada tahun 2023 dan dirancang untuk membantu pengguna meningkatkan jumlah pengikut mereka dengan mudah. 6 | 7 | > Proyek ini dibuat untuk tujuan edukasi dan eksperimen. Penggunaan alat ini sepenuhnya menjadi tanggung jawab pengguna. Saya tidak bertanggung jawab atas segala konsekuensi yang timbul dari penggunaan alat ini. 8 | 9 | ## 📌 **Fitur Utama** 10 | 11 | - **Mudah Digunakan**: Cukup masukkan username TikTok Anda dan tunggu pengikut bertambah. 12 | - **Gratis**: Tidak ada biaya tersembunyi, semuanya gratis! 13 | - **Tanpa Login**: Tidak perlu login ke akun TikTok Anda. 14 | - **User-Friendly**: Antarmuka yang sederhana dan mudah dipahami. 15 | 16 | ## 🛠️ Instalasi 17 | 18 | ```bash 19 | apt update -y && apt upgrade -y 20 | pkg install git python-pip 21 | git clone https://github.com/RozhakLabs/TikFuel.git 22 | cd TikFuel 23 | pip install -r requirements.txt 24 | python Run.py 25 | ``` 26 | 27 | ## ⚠️ Penting! 28 | 29 | - **Layanan Tidak Berfungsi Lagi**: Mulai tahun 2025, layanan ini tidak lagi berfungsi karena masalah server. Proyek ini hanya untuk tujuan edukasi dan arsip. 30 | - Gunakan dengan Bijak: Meskipun alat ini dirancang untuk membantu, pastikan Anda tidak menyalahgunakan layanan ini. 31 | 32 | ## 📜 Lisensi 33 | 34 | Proyek ini dilisensikan di bawah [MIT License](LICENSE). Anda bebas menggunakan, memodifikasi, dan mendistribusikan kode ini sesuai dengan ketentuan lisensi. -------------------------------------------------------------------------------- /Run.py: -------------------------------------------------------------------------------- 1 | try: 2 | import requests, json, re, random, string, os 3 | from requests_toolbelt import MultipartEncoder 4 | from rich import print as Println 5 | from rich.panel import Panel 6 | from rich.console import Console 7 | except ModuleNotFoundError as error: 8 | exit(f"[Error] {str(error).capitalize()}!") 9 | 10 | def BANNER() -> None: 11 | os.system('cls' if os.name == 'nt' else 'clear') 12 | Println( 13 | Panel(r"""[bold red] ●[bold yellow] ●[bold green] ●[/] 14 | [bold green] ,--------.,--.,--. ,------. ,--. 15 | '--. .--'`--'| |,-. | .---',--.,--. ,---. | | 16 | | | ,--.| / | `--, | || || .-. :| | 17 | | | | || \ \ | |` ' '' '\ --.| | 18 | [bold green] `--' `--'`--'`--'`--' `----' `----'`--' 19 | [underline white]Free Tiktok Followers - by Rozhak""", width=55, style="bold bright_white" 20 | ) 21 | ) 22 | return 23 | 24 | def INSERT_TIKTOK_LINK() -> None: 25 | try: 26 | BANNER() 27 | Println(Panel(f"[bold white]Silakan Masukkan Username Tiktok Yang Ingin Diberi\nkan Followers,\nPastikan Akun Tersebut Tidak Dalam Mode Pribadi!", width=55, style="bold bright_white", title="[bold bright_white]>> [Your Username] <<", subtitle="[bold bright_white]╭──────", subtitle_align="left")) 28 | username = Console().input("[bold bright_white] ╰─> ").replace('@', '') 29 | SENDING_FOLLOWERS(username) 30 | exit() 31 | except Exception as error: 32 | Println(Panel(f"[bold red]{str(error).title()}!", width=55, style="bold bright_white", title="[bold bright_white]>> [Error] <<")) 33 | exit() 34 | 35 | def SENDING_FOLLOWERS(username: str) -> bool: 36 | with requests.Session() as session: 37 | session.headers.update( 38 | { 39 | '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', 40 | 'accept-language': 'en-US,en;q=0.9', 41 | 'connection': 'keep-alive', 42 | 'host': 'tikfuel.com', 43 | 'upgrade-insecure-requests': '1', 44 | 'sec-fetch-site': 'none', 45 | 'sec-fetch-user': '?1', 46 | 'sec-fetch-dest': 'document', 47 | 'sec-fetch-mode': 'navigate', 48 | 'user-agent': GENERATE_USER_AGENT(), 49 | } 50 | ) 51 | response = session.get('https://tikfuel.com/free-tt/', allow_redirects=True, verify=True) 52 | try: 53 | wpforms_post_id = re.search(r'name="wpforms\[post_id\]" value="(\d+)"', response.text).group(1) 54 | wpforms_id = re.search(r'name="wpforms\[id\]" value="(\d+)"', response.text).group(1) 55 | data_token = re.search(r'data-token="(.*?)"', response.text).group(1) 56 | wpforms_fields = re.search(r'name="wpforms\[fields\]\[4\]\[\]" value="(.*?)"', response.text).group(1) 57 | wpforms_submit = re.search(r'name="wpforms\[submit\]" id="(.*?)"', response.text).group(1) 58 | except AttributeError: 59 | Println(Panel(f"[bold red]Maaf, Layanan Ini Sudah Tidak Berfungsi Lagi, Kare\nna Server Mengalami Masalah\nSaat Memproses Pengikut. Silakan Coba Lagi Nanti!", width=55, style="bold bright_white", title="[bold bright_white]>> [Servers Down] <<")) 60 | return False 61 | boundary = '----WebKitFormBoundary' + ''.join(random.sample(string.ascii_letters + string.digits, 16)) 62 | 63 | session.headers.update( 64 | { 65 | 'content-type': 'multipart/form-data; boundary={}'.format(boundary), 66 | 'referer': 'https://tikfuel.com/free-tt/', 67 | 'sec-fetch-site': 'same-origin', 68 | 'cache-control': 'max-age=0', 69 | 'origin': 'https://tikfuel.com', 70 | 'cookie': ("; ".join([str(key) + "=" + str(value) for key, value in session.cookies.get_dict().items()])) 71 | } 72 | ) 73 | 74 | fake_email = f'{"".join(random.choice("abcdefghijklmnopqrstuvwxyz0123456789") for _ in range(8))}@gmail.com' 75 | fake_strings = "".join(random.choice("abcdefghijklmnopqrstuvwxyz") for _ in range(8)) 76 | 77 | data = MultipartEncoder({ 78 | 'wpforms[fields][3]': (None, f'@{username}'), 79 | 'wpforms[fields][1]': (None, fake_strings), 80 | 'wpforms[fields][2]': (None, fake_email), 81 | 'wpforms[fields][4][]': (None, wpforms_fields), 82 | 'wpforms[id]': (None, wpforms_id), 83 | 'wpforms[author]': (None, '1'), 84 | 'wpforms[post_id]': (None, wpforms_post_id), 85 | 'wpforms[submit]': (None, wpforms_submit), 86 | 'wpforms[token]': (None, data_token) 87 | }, boundary = boundary) 88 | 89 | response2 = session.post('https://tikfuel.com/free-tt/', data=data, verify=True, allow_redirects=False) 90 | 91 | if 'Our systems detected that you already used once our program for Free Followers.' in response2.text: 92 | Println(Panel(f"[bold red]Maaf, Sistem Kami Mendeteksi Bahwa Anda Telah Mengg\nunakan Program Kami Untuk Pengikut Gratis. Gunak\nanlah Username Yang Berbeda Untuk Mencoba Kembali!", width=55, style="bold bright_white", title="[bold bright_white]>> [Username Limits] <<")) 93 | return False 94 | elif 'Estimated delivery time' in response2.text or 'First time submission' in response2.text: 95 | Println(Panel(f"""[bold white]Status :[bold green] Successfully... 96 | [bold white]Followers :[bold yellow] -+25 97 | [bold white]Link :[bold red] https://www.tiktok.com/@{username}""", width=55, style="bold bright_white", title="[bold bright_white]>> [Success] <<")) 98 | return True 99 | else: 100 | Println(Panel(f"[bold red]Maaf, Server Kami Mengalami Masalah Saat Mengirimk\nan Pengikut, Silakan Coba Beberapa Saat Lagi!", width=55, style="bold bright_white", title="[bold bright_white]>> [Server Errors] <<")) 101 | return False 102 | 103 | def GENERATE_USER_AGENT() -> str: 104 | browser_version = f'{random.randrange(101, 108)}.0.{random.randrange(4200, 4900)}.{random.randrange(40, 150)}' 105 | byte = random.choice(['Win64; x64', 'Win32; x86']) 106 | 107 | return f"Mozilla/5.0 (Windows NT 10.0; {byte}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/{browser_version} Safari/537.36" 108 | 109 | if __name__ == '__main__': 110 | try: 111 | os.system("git pull") 112 | if not os.path.exists("Penyimpanan/Subscribe.json"): 113 | youtube_url = json.loads(requests.get('https://raw.githubusercontent.com/RozhakXD/TikFuel/refs/heads/main/Penyimpanan/Youtube.json').text)['Link'] 114 | os.system(f'xdg-open {youtube_url}') 115 | with open('Penyimpanan/Subscribe.json', 'w') as w: 116 | json.dump({"Status": True}, w, indent=4) 117 | INSERT_TIKTOK_LINK() 118 | exit() 119 | except KeyboardInterrupt: 120 | exit() --------------------------------------------------------------------------------