├── usernames.txt ├── README.md └── checker.py /usernames.txt: -------------------------------------------------------------------------------- 1 | github 2 | test 3 | djahid 4 | djahid1 5 | djahid2 6 | djahid3 -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # GitHub Username Checker | PY 🐍 2 | 3 | **GitHub Username Checker** is a Python tool that allows you to check the availability of GitHub usernames based on a wordlist. The tool checks usernames and saves the available ones in a generated TXT file. 4 | 5 | ## Requirements 🛠 6 | 7 | - Python 3.X 8 | - `requests` library (Install using `pip install requests`) 9 | 10 | ## Installation 📁 11 | 12 | 1. Clone the repository. 13 | 2. Install the required libraries. 14 | 3. Run the tool : 15 | 16 | ```bash 17 | python checker.py 18 | ``` 19 | 20 | ## Usage 21 | 22 | 1. Start the GitHub Username Checker : 23 | 24 | ```bash 25 | python checker.py 26 | ``` 27 | 28 | 2. Enter the desired wordlist for the usernames you want to check in the usernames.txt (minimum length: 3 characters). 29 | 30 | 3. The tool will automatically check their availability on GitHub. 31 | 32 | 4. Available usernames will be saved in a created `available_usernames.txt` file. 33 | 34 | ## Features 35 | 36 | - **Availability Checking :** The tool checks the availability of a wordlist. 37 | - **Saving :** Available usernames are saved in a dedicated created TXT file. 38 | 39 | ## Example 40 | 41 | ```bash 42 | C:\Users\Djahid\Desktop\GitHub Username Checker>python checker.py 43 | Username 'github' is taken. 44 | Username 'test' is taken. 45 | Username 'djahid' is taken. 46 | Username 'djahid1' is taken. 47 | Username 'djahid2' is taken. 48 | Username 'djahid3' is available. 49 | Available usernames saved to 'available_usernames.txt'. 50 | ``` 51 | 52 | ## Notes 🗒️ 53 | 54 | - This tool is 100% proxy less and super simple to use. 55 | - Use a valid internet connection while running the tool. 56 | - Banned accounts may reappear as available. 57 | -------------------------------------------------------------------------------- /checker.py: -------------------------------------------------------------------------------- 1 | import requests 2 | 3 | def check_username_availability(username): 4 | """Check if a GitHub username is available.""" 5 | url = f"https://github.com/{username}" 6 | response = requests.get(url) 7 | 8 | # If the response status code is 404, the username is available 9 | if response.status_code == 404: 10 | return True 11 | elif response.status_code == 200: 12 | return False 13 | else: 14 | raise Exception(f"Unexpected response code: {response.status_code}") 15 | 16 | def read_usernames_from_file(filename): 17 | """Read usernames from a file and return a list.""" 18 | try: 19 | with open(filename, 'r') as file: 20 | usernames = [line.strip() for line in file if line.strip()] 21 | return usernames 22 | except FileNotFoundError: 23 | print(f"Error: The file '{filename}' was not found.") 24 | return [] 25 | except Exception as e: 26 | print(f"An error occurred while reading the file: {e}") 27 | return [] 28 | 29 | def save_available_usernames_to_file(usernames, filename): 30 | """Save available usernames to a file.""" 31 | try: 32 | with open(filename, 'w') as file: 33 | for username in usernames: 34 | file.write(f"{username}\n") 35 | print(f"Available usernames saved to '{filename}'.") 36 | except Exception as e: 37 | print(f"An error occurred while writing to the file: {e}") 38 | 39 | def main(): 40 | input_file = 'usernames.txt' 41 | output_file = 'available_usernames.txt' 42 | 43 | usernames = read_usernames_from_file(input_file) 44 | available_usernames = [] 45 | 46 | for username in usernames: 47 | try: 48 | if check_username_availability(username): 49 | available_usernames.append(username) 50 | print(f"Username '{username}' is available.") 51 | else: 52 | print(f"Username '{username}' is taken.") 53 | except Exception as e: 54 | print(f"Error checking username '{username}': {e}") 55 | 56 | save_available_usernames_to_file(available_usernames, output_file) 57 | 58 | if __name__ == "__main__": 59 | main() 60 | --------------------------------------------------------------------------------