Сортировщик доменов — Разделение базы email:pass по доменам [Быстро / Асинхронно / Без лагов]Сделал этот софт с целью помощи т.к увидел пост где паренёк ищет подобный софт
та самая тема blyat` - https://xss.pro/threads/139367/
Софт написан на Python 3.11+
Преимущества такого софта
- Моментальный парсинг тысяч строк
- Асинхронная обработка — не тормозит даже на слабом ПК
- Автоматический выбор базы через окно
- Безопасный — не отправляет данные никуда
- Open-source можно проверить мой код прям тут
САМ КОД В КОНЦЕ 
Настройка:
1. Установите зависимости, проще говоря библы.
Код:
pip install asyncio, aiofiles, os
2. Составьте структуру для софта, она должна выглядеть так
Код:
Сортировщик/
│
├── main.py # основной скрипт бота
├── start.bat # батник для запуска
Выведите это в отдельную папку, он создаст после папку Domains где будет разбита ваша база. 
3. Как юзать?
- Запускаете файл start.bat
- Выбираете ваш файл с базами
- 3,2,1 и ваш почты разбиты по доменам в папке Domains
- Вот так выглядит результат
4. Код и .bat файл.
Код:
Python:
import asyncio
import aiofiles
import os
from collections import defaultdict
from tkinter import Tk, filedialog
print("""
░▄█▀███▄▄████████████████████▄▄███▀█░
░█░░▀████████████████████████████░░█░
░░█▄░░▀████████████████████████░░░▄▀░
░░░▀█▄▄████▀▀▀░░░░██░░░▀▀▀█████▄▄█▀░░
░░░▄███▀▀░░░░░░░░░██░░░░░░░░░▀███▄░░░
░░▄██▀░░░░░▄▄▄██▄▄██░▄██▄▄▄░░░░░▀██▄░
▄██▀░░░▄▄▄███▄██████████▄███▄▄▄░░░▀█▄
▀██▄▄██████████▀░███▀▀▀█████████▄▄▄█▀
░░▀██████████▀░░░███░░░▀███████████▀░
░░░░▀▀▀██████░░░█████▄░░▀██████▀▀░░░░
░░░░░░░░░▀▀▀▀▄░░█████▀░▄█▀▀▀░░░░░░░░░
░░░░░░░░░░░░░░▀▀▄▄▄▄▄▀▀░░░░░░░░░░░░░░""")
def select_input_file():
root = Tk()
root.withdraw()
file_path = filedialog.askopenfilename(
title="Выберите файл с базой email:pass",
filetypes=[("Text Files", "*.txt"), ("All Files", "*.*")]
)
return file_path
domain_dict = defaultdict(list)
async def read_lines(input_file):
async with aiofiles.open(input_file, mode='r', encoding='utf-8') as f:
async for line in f:
line = line.strip()
if not line or ':' not in line:
continue
email, _ = line.split(':', 1)
if '@' in email:
domain = email.split('@')[1].lower()
domain_dict[domain].append(line)
async def write_domain(domain, lines, output_dir):
async with aiofiles.open(os.path.join(output_dir, f"{domain}.txt"), 'w', encoding='utf-8') as f:
await f.write('\n'.join(lines))
async def main():
input_file = select_input_file()
if not input_file:
print("❌ Файл не выбран.")
return
output_dir = "domains"
os.makedirs(output_dir, exist_ok=True)
await read_lines(input_file)
tasks = [write_domain(domain, lines, output_dir) for domain, lines in domain_dict.items()]
await asyncio.gather(*tasks)
print(f"Разбито нахуй. Файлы сохранены в папке: {output_dir}")
if __name__ == "__main__":
asyncio.run(main())
# By Genjutsu For xss.pro
Код:
cmd.exe /k "python main.py"
Дорогие друзья, искренне благодарю за чтение моей статьи, софт мой и я старался расписать более подробно, жду ваших реакций.
Как говорил Владимир Ильич
У нас же один только лозунг, один девиз: всякий, кто трудится, тот имеет право пользоваться благами жизни.
Последнее редактирование: