• XSS.stack #1 – первый литературный журнал от юзеров форума

🔥 Сортировщик доменов — Разделение базы email:pass по доменам [Быстро / Асинхронно / Без лагов]

Genjutsu

floppy-диск
Пользователь
Регистрация
15.05.2025
Сообщения
8
Реакции
13
🔥 Сортировщик доменов — Разделение базы 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
1749774464341.png

- Выбираете ваш файл с базами
1749774447596.png

- 3,2,1 и ваш почты разбиты по доменам в папке Domains
1749774487100.png

- Вот так выглядит результат

1749774523429.png


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"
-------------------------------------------------------------

Дорогие друзья, искренне благодарю за чтение моей статьи, софт мой и я старался расписать более подробно, жду ваших реакций.
Как говорил Владимир Ильич
У нас же один только лозунг, один девиз: всякий, кто трудится, тот имеет право пользоваться благами жизни.
1749775038177.png
 
Последнее редактирование:


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх