Используем Бесплатные Почты для регистрации, с возможностью восстановления аккаунтов по этим почтам

bvbfor

Client
Регистрация
10.04.2016
Сообщения
459
Благодарностей
326
Баллы
63
Используем Бесплатные Почты для регистрации, с возможностью восстановления аккаунтов по этим почтам

Мы будем использовать почты mail:pass , которые можно найти на форумах или телеграм каналах.

В чём их преимущество перед сервисами временных почт?

Многие сервисы после регистрации иногда просят подтвердить авторизацию с помощью кода, отправленному на почту, указанную при регистрации. С временными почтами такое уже не получится. Держать только для этого ферму с тысячами своих почтовых аккаунтов тоже не вариант.

А с почтами mail:pass легко. Мы легко можем получить код из почты в любое время.

Например:

Где то в конце прошлого года я зарегистрировал несколько тысяч аккаунтов твиттер, немного их попользовал, и занялся чем то другим, благополучно забыв про них.
Через полгода заброшенные профили zp уже были нерабочие.
Авторизоваться на 95% аккаунтах удалось за счет таких почт, в шаблоне при авторизации была проверка на авторизацию по профилю и в случае неудачи авторизация по почте, с получением кода на почту.
Сейчас также пока не до них, но возможно ещё через полгода понадобятся и у меня уже будут акки с годовой отлёжкой.


Работаем по imap, т.е. мы не будем заходить в почтовый аккаунт через web, а нужные письма будем доставать по протоколу imap.
Принцип работы такой же, как и у ушедшей в небытие копеечки. Только аккаунты у нас всегда под рукой для случая если сервис повторно заставит подтвердить почту.

Нам нужны почты, у которых пароль к аккаунту совпадает с паролем доступа по imap

Достаём нужное письмо по imap:
// Парсинг строки подключения IMAP из переменной проекта
// Формат: host:port:email:password
string[] imap = project.Variables["imap"].Value.Trim().Split(':');
string host = imap[0];        // IMAP сервер (например, imap.gmail.com)
int port = int.Parse(imap[1]); // Порт подключения (143 для незащищенного, 993 для SSL)
string email = imap[2];       // Email адрес для авторизации
string password = imap[3];    // Пароль от email

// Получение текста для поиска из переменной проекта
string search = project.Variables["search"].Value.Trim();

// Создание и настройка IMAP клиента
using (var client = new ImapClient())
{
    // Отключение проверки SSL сертификата (принимаем любой сертификат)
    client.ServerCertificateValidationCallback = (s, c, h, e) => true;

    // Подключение к серверу в зависимости от порта
    if(port == 143)
    {
        // Подключение без SSL (незащищенное соединение)
        client.Connect(host, port, false);
        client.Authenticate(email, password);
    }
    else
    {
        // Подключение с SSL (защищенное соединение)
        client.Connect(host , port, SecureSocketOptions.SslOnConnect);
        client.Authenticate(email , password);
    }

    // Получение доступа к папке "Входящие"
    var inbox = client.Inbox;
    inbox.Open(FolderAccess.ReadOnly); // Открываем только для чтения

    // Создание поискового запроса
    // Варианты поиска
    //var query = SearchQuery.BodyContains(search);    // Поиск в теле письма
    //var query = SearchQuery.SubjectContains(search); // Поиск в теме письма
    var query = SearchQuery.FromContains(search);      // Поиск по отправителю

    // Выполнение поиска писем
    var results = inbox.Search(query);

    // Обработка найденных писем
    foreach (UniqueId uid in results)
    {
        // Получение сообщения по уникальному ID
        var message = inbox.GetMessage(uid);
 
        // Сохранение темы письма в переменную проекта
        project.Variables["pismo_subj"].Value = message.Subject;
 
        string messageText = "";
 
        // Извлечение текста письма в порядке приоритета
        if (message.HtmlBody != null)
        {
            // Если есть HTML версия - парсим её и извлекаем текст
            var doc = new HtmlDocument();
            doc.LoadHtml(message.HtmlBody);
            messageText = doc.DocumentNode.InnerText.Trim();
        }
        else if (message.TextBody != null)
        {
            // Если есть текстовая версия - используем её
            messageText = message.TextBody.Trim();
        }
        else
        {
            // Если нет готовых версий - ищем текстовую часть в составных частях
            var textPart = message.BodyParts.OfType<TextPart>().FirstOrDefault();
            if (textPart != null)
            {
                messageText = textPart.Text.Trim();
            }
        }
 
        // Сохранение текста письма в переменную проекта
        project.Variables["pismo_text"].Value = messageText;
    }

    // отключение от IMAP сервера
    client.Disconnect(true);
}

Видео Пример регистрации на одном из сайтов знакомств.(Файл с видео в прикреплённом архиве)
-
В прикрепленном архиве шаблон, файлы DLL , это видео и файл с более 2000 таких аккаунтов.
-
 

Вложения

Последнее редактирование:

qwertytraf

Новичок
Регистрация
13.06.2025
Сообщения
4
Благодарностей
2
Баллы
3
спасибо за полезную статью!
 
  • Спасибо
Реакции: bvbfor

smartmail

Client
Регистрация
18.04.2015
Сообщения
428
Благодарностей
230
Баллы
43
полезно, спасибо
но думаю, имеет смысл - дополнить код подключением к IMAP через прокси.
подключение к таким мыльникам (майл:пасс), найденным на "форумах или телеграм-каналах" напрямую - считаю рискованным мероприятием...
 

bvbfor

Client
Регистрация
10.04.2016
Сообщения
459
Благодарностей
326
Баллы
63
полезно, спасибо
но думаю, имеет смысл - дополнить код подключением к IMAP через прокси.
подключение к таким мыльникам (майл:пасс), найденным на "форумах или телеграм-каналах" напрямую - считаю рискованным мероприятием...
Не думаю, что из за этого, да ещё из за бугра предъява прилетит!
Зарегал так не один десяток тысяч акков.
Но для сомневающихся
Соединение по imap с прокси:
// Парсинг строки подключения IMAP из переменной проекта
// Формат: host:port:email:password
string[] imap = project.Variables["imap"].Value.Trim().Split(':');
string host = imap[0];        // IMAP сервер (например, imap.gmail.com)
int port = int.Parse(imap[1]); // Порт подключения (143 для незащищенного, 993 для SSL)
string email = imap[2];       // Email адрес для авторизации
string password = imap[3];    // Пароль от email

// Парсинг строки прокси из переменной проекта
// Формат: login:pass@ip:port
string proxyString = project.Variables["proxy"].Value.Trim();
string proxyLogin = "";
string proxyPassword = "";
string proxyHost = "";
int proxyPort = 0;

if (!string.IsNullOrEmpty(proxyString))
{
    // Разделяем на части по символу @
    string[] proxyParts = proxyString.Split('@');
    if (proxyParts.Length == 2)
    {
        // Парсим логин и пароль
        string[] credentials = proxyParts[0].Split(':');
        if (credentials.Length == 2)
        {
            proxyLogin = credentials[0];
            proxyPassword = credentials[1];
        }
     
        // Парсим хост и порт
        string[] hostPort = proxyParts[1].Split(':');
        if (hostPort.Length == 2)
        {
            proxyHost = hostPort[0];
            proxyPort = int.Parse(hostPort[1]);
        }
    }
}

// Получение текста для поиска из переменной проекта
string search = project.Variables["search"].Value.Trim();

// Создание и настройка IMAP клиента
using (var client = new ImapClient())
{
    // Отключение проверки SSL сертификата (принимаем любой сертификат)
    client.ServerCertificateValidationCallback = (s, c, h, e) => true;
 
    // Настройка прокси, если он указан
    if (!string.IsNullOrEmpty(proxyHost) && proxyPort > 0)
    {
        var proxyClient = new HttpsProxyClient(proxyHost, proxyPort);
     
        // Добавляем аутентификацию для прокси, если указаны логин и пароль
        if (!string.IsNullOrEmpty(proxyLogin) && !string.IsNullOrEmpty(proxyPassword))
        {
            proxyClient.ProxyCredentials = new NetworkCredential(proxyLogin, proxyPassword);
        }
     
        client.ProxyClient = proxyClient;
    }
 
    // Подключение к серверу в зависимости от порта
    if(port == 143)
    {
        // Подключение без SSL (незащищенное соединение)
        client.Connect(host, port, false);
        client.Authenticate(email, password);
    }
    else
    {
        // Подключение с SSL (защищенное соединение)
        client.Connect(host , port, SecureSocketOptions.SslOnConnect);
        client.Authenticate(email , password);
    }
 
    // Получение доступа к папке "Входящие"
    var inbox = client.Inbox;
    inbox.Open(FolderAccess.ReadOnly); // Открываем только для чтения
 
    // Создание поискового запроса
    // Варианты поиска
    //var query = SearchQuery.BodyContains(search);    // Поиск в теле письма
    //var query = SearchQuery.SubjectContains(search); // Поиск в теме письма
    var query = SearchQuery.FromContains(search);      // Поиск по отправителю
 
    // Выполнение поиска писем
    var results = inbox.Search(query);
 
    // Обработка найденных писем
    foreach (UniqueId uid in results)
    {
        // Получение сообщения по уникальному ID
        var message = inbox.GetMessage(uid);
     
        // Сохранение темы письма в переменную проекта
        project.Variables["pismo_subj"].Value = message.Subject;
     
        string messageText = "";
     
        // Извлечение текста письма в порядке приоритета
        if (message.HtmlBody != null)
        {
            // Если есть HTML версия - парсим её и извлекаем текст
            var doc = new HtmlDocument();
            doc.LoadHtml(message.HtmlBody);
            messageText = doc.DocumentNode.InnerText.Trim();
        }
        else if (message.TextBody != null)
        {
            // Если есть текстовая версия - используем её
            messageText = message.TextBody.Trim();
        }
        else
        {
            // Если нет готовых версий - ищем текстовую часть в составных частях
            var textPart = message.BodyParts.OfType<TextPart>().FirstOrDefault();
            if (textPart != null)
            {
                messageText = textPart.Text.Trim();
            }
        }
     
        // Сохранение текста письма в переменную проекта
        project.Variables["pismo_text"].Value = messageText;
    }
 
    // отключение от IMAP сервера
    client.Disconnect(true);
}
 
  • Спасибо
Реакции: smartmail
Регистрация
23.03.2015
Сообщения
1 274
Благодарностей
836
Баллы
113
Вот бы ещё шаблончик для сбора таких аккаунтов, было бы совсем замечательно!
А так действительно полезная штука
 

bvbfor

Client
Регистрация
10.04.2016
Сообщения
459
Благодарностей
326
Баллы
63
Вот бы ещё шаблончик для сбора таких аккаунтов, было бы совсем замечательно!
А так действительно полезная штука
Таких почт можно собрать несколько десятков тысяч за день два.
"Аксакалы" наверняка знают как, и пользователи одной их моих тем.
Для новичков в комплекте файл с 2 300 таких почт.
 

seodamage

Client
Регистрация
08.09.2014
Сообщения
252
Благодарностей
78
Баллы
28
как это будет работать в случае если я подниму свой smtp с catchall и нарегаю акков на
random@mydomain.com

catchall будет перенаправлять всё на одну почту, сниппеты будут работать в таком случае? нужен пример такой работы

(возиться с паблик почтами нет желания)
 

seodamage

Client
Регистрация
08.09.2014
Сообщения
252
Благодарностей
78
Баллы
28
и ещё не понятно, он удаляет письмо после прочтения или оно так и остаётся в инбоксе?
 

bvbfor

Client
Регистрация
10.04.2016
Сообщения
459
Благодарностей
326
Баллы
63
как это будет работать в случае если я подниму свой smtp с catchall и нарегаю акков на
random@mydomain.com

catchall будет перенаправлять всё на одну почту, сниппеты будут работать в таком случае? нужен пример такой работы

(возиться с паблик почтами нет желания)
Если сделаешь акки, например sender1@mydomain.com sender2@mydomain.com sender3@mydomain.com , ответы будут приходить на ту почту, которую укажешь при регистрации.
Принцип работы такой же, но пример сделаю попозже.

и ещё не понятно, он удаляет письмо после прочтения или оно так и остаётся в инбоксе?
Остается, т.к. всё равно берем последнее письмо, но как удалять если нужно тоже покажу чуть позже
 
  • Спасибо
Реакции: seodamage

seodamage

Client
Регистрация
08.09.2014
Сообщения
252
Благодарностей
78
Баллы
28
Если сделаешь акки, например sender1@mydomain.com sender2@mydomain.com sender3@mydomain.com , ответы будут приходить на ту почту
а походу надо будет просто вписать данные от почты на которую летят писма с catchall фильтра
то есть я регаюсь на

ewjgegweg@mydomain.com
wvwejijj232@mydomain.com
334543345@mydomain.com
fwewgojpp@mydomain.com


а письма автоматом перенаправляются на allmail@mydomain.com
получается я просто указываю тогда данные для входа в allmail@mydomain.com и там сразу все письма будут лежать

получается если так будет работать, catchall именно так и работает, но не понятно пока как это будет работать в сочетании с шабом,
то остаётся только решить вопрос с удалением писем, тех которые он взял, чтобы не гонять одну и ту же инфу.
 
Последнее редактирование:

bvbfor

Client
Регистрация
10.04.2016
Сообщения
459
Благодарностей
326
Баллы
63
а походу надо будет просто вписать данные от почты на которую летят писма с catchall фильтра
то есть я регаюсь на

ewjgegweg@mydomain.com
wvwejijj232@mydomain.com
334543345@mydomain.com
fwewgojpp@mydomain.com


а письма автоматом перенаправляются на allmail@mydomain.com
получается я просто указываю тогда данные для входа в allmail@mydomain.com и там сразу все письма будут лежать

получается если так будет работать, catchall именно так и работает, но не понятно пока как это будет работать в сочетании с шабом,
то остаётся только решить вопрос с удалением писем, тех которые он взял, чтобы не гонять одну и ту же инфу.
жёстко прописываем доступ к ящику allmail@mydomain.com , если сервер и порт mail.mydomain.com:993
134447


удаляем письмо после взятия
134448


код для получения из постоянного ящика с удалением письма:
// Парсинг строки подключения IMAP из переменной проекта
// Формат: host:port:email:password

//доступ к ящику allmail@mydomain.com
project.Variables["imap"].Value = "mail.mydomain.com:993:allmail@mydomain.com:password";


string[] imap = project.Variables["imap"].Value.Trim().Split(':');
string host = imap[0];        // IMAP сервер (например, imap.gmail.com)
int port = int.Parse(imap[1]); // Порт подключения (143 для незащищенного, 993 для SSL)
string email = imap[2];       // Email адрес для авторизации
string password = imap[3];    // Пароль от email

// Получение текста для поиска из переменной проекта
string search = project.Variables["search"].Value.Trim();

// Создание и настройка IMAP клиента
using (var client = new ImapClient())
{
    // Отключение проверки SSL сертификата (принимаем любой сертификат)
    client.ServerCertificateValidationCallback = (s, c, h, e) => true;
    
    // Подключение к серверу в зависимости от порта
    if(port == 143)
    {
        // Подключение без SSL (незащищенное соединение)
        client.Connect(host, port, false);
        client.Authenticate(email, password);
    }
    else
    {
        // Подключение с SSL (защищенное соединение)
        client.Connect(host , port, SecureSocketOptions.SslOnConnect);
        client.Authenticate(email , password);
    }
    
    // Получение доступа к папке "Входящие"
    var inbox = client.Inbox;
    inbox.Open(FolderAccess.ReadWrite); // Открываем для чтения и записи (для возможности удаления)
    
    // Создание поискового запроса
    // Варианты поиска
    //var query = SearchQuery.BodyContains(search);    // Поиск в теле письма
    //var query = SearchQuery.SubjectContains(search); // Поиск в теме письма
    var query = SearchQuery.FromContains(search);      // Поиск по отправителю
    
    // Выполнение поиска писем
    var results = inbox.Search(query);
    
    // Обработка первого найденного письма
    if (results.Count > 0)
    {
        UniqueId uid = results[0]; // Берем первое найденное письмо
        
        // Получение сообщения по уникальному ID
        var message = inbox.GetMessage(uid);
        
        // Сохранение темы письма в переменную проекта
        project.Variables["pismo_subj"].Value = message.Subject;
        
        string messageText = "";
        
        // Извлечение текста письма в порядке приоритета
        if (message.HtmlBody != null)
        {
            // Если есть HTML версия - парсим её и извлекаем текст
            var doc = new HtmlDocument();
            doc.LoadHtml(message.HtmlBody);
            messageText = doc.DocumentNode.InnerText.Trim();
        }
        else if (message.TextBody != null)
        {
            // Если есть текстовая версия - используем её
            messageText = message.TextBody.Trim();
        }
        else
        {
            // Если нет готовых версий - ищем текстовую часть в составных частях
            var textPart = message.BodyParts.OfType<TextPart>().FirstOrDefault();
            if (textPart != null)
            {
                messageText = textPart.Text.Trim();
            }
        }
        
        // Сохранение текста письма в переменную проекта
        project.Variables["pismo_text"].Value = messageText;
        
        // Удаление обработанного письма
        inbox.AddFlags(uid, MessageFlags.Deleted, true);
        inbox.Expunge();
        
        project.SendInfoToLog("Письмо обработано и удалено", true);
    }
    else
    {
        project.SendInfoToLog("Письма не найдены", true);
    }
    
    // отключение от IMAP сервера
    client.Disconnect(true);
}

//вывод текста письма в лог
//project.SendInfoToLog("текст письма - " + project.Variables["pismo_text"].Value , true);
 
  • Спасибо
Реакции: seodamage

seodamage

Client
Регистрация
08.09.2014
Сообщения
252
Благодарностей
78
Баллы
28
спасибо, в работе пригодиться, проголосую)
 

Tvister

Client
Регистрация
09.09.2010
Сообщения
263
Благодарностей
36
Баллы
28
Таких почт можно собрать несколько десятков тысяч за день два.
"Аксакалы" наверняка знают как, и пользователи одной их моих тем.
Для новичков в комплекте файл с 2 300 таких почт.
Так намекнул бы хоть как их собирать) Было бы очень полезно. Проголосовал бы сразу за тебя.
 
Последнее редактирование:

bvbfor

Client
Регистрация
10.04.2016
Сообщения
459
Благодарностей
326
Баллы
63
Так намекнул бы хоть как их собирать) Было бы очень полезно. Проголосовал бы сразу за тебя.
в телеграм или гугле ищем по строке mail:pass
находим форумы, тг каналы, в них кроме акков бывают ссылки на другие форумы и каналы
 
Последнее редактирование:
  • Спасибо
Реакции: capvad91 и Tvister

capvad91

Client
Регистрация
27.03.2019
Сообщения
54
Благодарностей
59
Баллы
18
спасибо, точно пригодится!
 

Drawmoney27

Client
Регистрация
16.04.2022
Сообщения
2
Благодарностей
0
Баллы
1
Хорошая тема для любителей регистраций на более релевантные мыльники
 

wolowizard

Новичок
Регистрация
30.06.2025
Сообщения
2
Благодарностей
0
Баллы
1
Хочу отдельно отметить, насколько грамотно автор подошёл к вопросу регистрации и восстановления аккаунтов с использованием почт формата mail:pass. Это действительно профессиональный уровень мышления, который приходит с опытом работы в ZennoPoster.

Вместо временных решений, как у большинства новичков, здесь используется стабильная база почт с реальным доступом через IMAP. Это уже совсем другой уровень. Особенно радует реализация в шаблоне — когда авторизация происходит не только по профилю, но и предусмотрена автоматическая проверка почты и восстановление через код в случае блокировки.

Я сталкивался с похожими задачами, и могу точно сказать — такую гибкость и надёжность достигают только те, кто глубоко понимает механику платформ, принципы восстановления и умеет реализовать это в ZP на уровне продакшена.

Фишка в том, что автор предусмотрел не только текущее использование, но и возможные ситуации через полгода и дальше — когда потребуется "реанимировать" аккаунты. Благодаря этому подходу, шаблоны не устаревают с течением времени, а наоборот — только выигрывают, ведь аккаунты лежат, "отлёживаются", и могут быть повторно использованы без проблем.

Работа через IMAP, минимизация ручных действий, грамотное использование ресурсов — это всё говорит о высоком уровне разработчика. Не просто скриптописец, а действительно специалист, который думает на 10 шагов вперёд.

Если вы ищете рабочие и умные решения на ZennoPoster — у этого автора точно стоит учиться.

Респект!
 
Регистрация
02.07.2010
Сообщения
428
Благодарностей
127
Баллы
43
Хочу отдельно отметить, насколько грамотно автор подошёл к вопросу регистрации и восстановления аккаунтов с использованием почт формата mail:pass. Это действительно профессиональный уровень мышления, который приходит с опытом работы в ZennoPoster.

Вместо временных решений, как у большинства новичков, здесь используется стабильная база почт с реальным доступом через IMAP. Это уже совсем другой уровень. Особенно радует реализация в шаблоне — когда авторизация происходит не только по профилю, но и предусмотрена автоматическая проверка почты и восстановление через код в случае блокировки.

Я сталкивался с похожими задачами, и могу точно сказать — такую гибкость и надёжность достигают только те, кто глубоко понимает механику платформ, принципы восстановления и умеет реализовать это в ZP на уровне продакшена.

Фишка в том, что автор предусмотрел не только текущее использование, но и возможные ситуации через полгода и дальше — когда потребуется "реанимировать" аккаунты. Благодаря этому подходу, шаблоны не устаревают с течением времени, а наоборот — только выигрывают, ведь аккаунты лежат, "отлёживаются", и могут быть повторно использованы без проблем.

Работа через IMAP, минимизация ручных действий, грамотное использование ресурсов — это всё говорит о высоком уровне разработчика. Не просто скриптописец, а действительно специалист, который думает на 10 шагов вперёд.

Если вы ищете рабочие и умные решения на ZennoPoster — у этого автора точно стоит учиться.

Респект!
Бот чтоли? Написал бы нормальным языком, а не ии.
А по теме зачет, автор действительно дал пользу.
 
  • Спасибо
Реакции: smartmail

one

Client
Регистрация
22.09.2015
Сообщения
6 952
Благодарностей
1 296
Баллы
113

wolowizard

Новичок
Регистрация
30.06.2025
Сообщения
2
Благодарностей
0
Баллы
1

one

Client
Регистрация
22.09.2015
Сообщения
6 952
Благодарностей
1 296
Баллы
113

booldozer

Client
Регистрация
13.02.2011
Сообщения
140
Благодарностей
47
Баллы
28
Так, 100 лет не писал тут) Но есть несколько рекомендаций по данной теме (сугубо по моему мнению упрощающие жизнь), так как опыт работы с данным методом где-то лет 10

Где брать акки?
На сайтах специализирующихся на бр*те акков стима, вартандер, WoT и прочих... Ну или в TG пабликах. Главное брать свежие!

Как чекать?
Для себя я вывел такую схему. Изначально я купил All One Checker, но несколько лет назад лавочку прикрыли и софт перестал работать. Поэтому было принято решение прикупить чекер от старлея, не уровень AIO но с главной задачей чекинга справляется.

Прокси
Для этого подойдут и торовские прокси, я просто брал шаблон который был написан и прикреплен тут на форуме лет 8 назад и ставлю перезагрузку всех потоков через 60 секунд. (Но учитывая развитие ИИ, с недавнего времени юзаю скрипт написанный GPT со всеми плюшками которые опишу дальше. Просто сформируйте промпт в GPT и он напишет вам готовый питоновский код для запуска торовских потоков, с гуи на тинкере, со всеми вашими пожеланиями. С выборкой по странам, количеством потоков, Местом в которое сохранять документ со списком проксей, временем перезапуска потоков и тд. Короче можете написать себе торовский комбайн который подходит под вас) Работает у меня 20 потоков тора на 100 потоков в чекере. Тоесть по 5 потоков на 1 проксю. Как для меня этого достаточно, что-бы на ночь поставить и проснуться с хорошей такой базой. Но вы всегда можете увеличить количество потоков как вам удобнее будет

Всего этого хватает для того что-бы создать себе базу расходников для теста какой-то темки
Ну и основное что нужно понимать, если владелец почты увидит сотни писем с регистрациями (просто велика вероятность что не только вы один такой умный), то он сменит пасс, или почтовик просто прибанит акк из-за сверх высокой активности. И если у вас логин с входом по коду от почты то аккаунт отлетит. Так что стоит продумать этот момент. Что-бы не вышло так что акк вам приносил профит и отлетел) Для таких вещей лучше регать самому мыла.

Как-то так...
 
  • Спасибо
Реакции: severiniv

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)