blud
Client
- Регистрация
- 19.04.2011
- Сообщения
- 657
- Реакции
- 77
- Баллы
- 28
Мне они не подходят.Один скромный вопрос у меня, так как я практически не работаю с почтой в больших объемах: а почему нельзя использовать сервис Temp-mail и использовать сотни различных доменов, предлагаемых этим сервисом?
Настроить можно за пару минут и API есть.
Давайте проверим их говнокод и скрипт на пыхе.хм .. по поводу генерации гмайлов с точкой.. зачем изобретать велосипед? если уже даавно все изобретено... GmailDotGenerator была написана командой zennolab еще для 3-й версии(если не ошибаюсь) постера
а давайте проверим у кого длинней...Давайте проверим их говнокод и скрипт на пыхе.
Софтина просто сыпется и крашится )))
А мои тулзы работают очень быстро и эффективно.

хм, а я настраивал через API этих самых панелей этот функционал. Разве удобно делать это руками или вам не нужны они в больших объемах?Нету шаблона так как я привязываю их руками.
Там нужно подтверждать владение доменов как в панели вебмастера и подтверждаю в основном так.
Для поддомена yamail-b3759a5ff495 в зоне вашего домена настройте CNAME-запись на mail.yandex.ru.
А для этого надо заходить в панель управления доменом у регистратора.
мне хватает 2-3 доменовхм, а я настраивал через API этих самых панелей этот функционал. Разве удобно делать это руками или вам не нужны они в больших объемах?
Чисто с целью обучения хотел бы понять как переписать данный фрагмент кода на шарп сниппет.Также прилагаю скрипт для генерации мыл с точками
Код:<?php $in="vasyaivanov"; // вместо vasyaivanov вставьте свое мыло $add="@gmail.com"; $l=strlen($in); //Также тут if ($l>11) укажите количество символов в вашем почтовом ящике if ($l>11){ echo "Sorry, too long.\n"; } $total=pow(2,$l-1); $in_arr=str_split($in); for($i=0;$i<$total;$i++){ $w_arr=$in_arr; $bits=$i; $pos=0; while($bits){ if ($bits&1){ $w_arr[$pos].="."; } $bits=$bits>>1; $pos++; } echo implode($w_arr).$add."\n"; }
запускать лучше из консоли
в виде: php dots.php > out.txt
Очень красивое решение.Все более-менее в нем понятно, вот только побитовое смещение не совсем мне понятно...
Очень красивое решение.
Rsh (битовое смещение вправо) в данном случае выполняет роль счетчика второго цикла.
Если вкратце, то суть примерно следующая - вычисляется максимальное кол-во сочетаний ($total), далее идут проходы, где шаг цикла можно так сказать переводится в двоичное представление, т.е. для qwerty будет например так:
I шаг = двоичное представление
0 шаг = 0
1 шаг = 1
2 шаг = 10
3 шаг = 11
4 шаг = 100
5 шаг = 101
6 шаг = 110
7 шаг = 111
8 шаг = 1000
9 шаг = 1001
10 шаг = 1010
11 шаг = 1011
12 шаг = 1100
...
25 шаг = 11001
Т.е. фактически на каждом шаге получаем информацию где надо добавить точку.
Операция смещения $bits=$bits>>1; позволяет "пройти по битам".
Т.е. для 9го шага и значения 1001 после первого выполнения смещения будет результат 100, после второго 10, третьего 1, четвертого 0. Учет битов идет справа, т.е. нулевым битом в байте является крайний справа.
Операцией $bits&1 (логическое И) сравнивается является ли "текущий" (крайний правый) бит единицей и если это так - добавляет точку к буферу в позиции pos.
Вот и выходит что первичный цикл создает весь список комбинаций точек, а второй "битовый псевдоцикл" нужен для нахождения куда именно эти точки впихнуть.
string login="vasyaivanov"; // логин in
string domen="@gmail.com"; // домен add
int l = login.Length; // количество букв в логине
if (l>11) project.SendErrorToLog("Sorry, too long.", true ); // Слишком длинный логин
double total = Math.Pow(2, l-1); // Вычисляется максимальное кол-во сочетаний
char[] in_arr = login.ToCharArray(0, login.Length); // Забрасываем символы в масив
for(int i=0; i<total; i++){
char[] w_arr = in_arr;
int bits = i;
int pos = 0;
// тут идет цикл... как он выглядит???
// while(bits){
// if (bits&1){
// w_arr[pos].=".";
// }
// bits=bits>>1;
// pos++;
// }
string new_login = String.Empty;
foreach (char simvol in w_arr) new_login+=simvol.ToString();
project.SendInfoToLog(string.Format("{0}{1}",new_login,domen), true);
}
Вот только последний цикл не знаю как переписать чтобы все работало
string login="vasyaivanov"; // логин in
string domen="@gmail.com"; // домен add
int l = login.Length; // количество букв в логине
if (l>11) project.SendErrorToLog("Sorry, too long.", true ); // Слишком длинный логин
double total = Math.Pow(2, l-1); // Вычисляется максимальное кол-во сочетаний
for(int i=0; i<total; i++){
string w_arr = login;
int bits = i;
int pos = 0;
while (bits>0){
if ((bits&1)==1){
pos++;
w_arr = w_arr.Insert(pos,".");
}
bits=bits>>1;
pos++;
}
string new_login = w_arr;
project.SendInfoToLog(new_login+domen, true);
}
А как теперь эти все почты получить в текстовом файле?Код:string login="vasyaivanov"; // логин in string domen="@gmail.com"; // домен add int l = login.Length; // количество букв в логине if (l>11) project.SendErrorToLog("Sorry, too long.", true ); // Слишком длинный логин double total = Math.Pow(2, l-1); // Вычисляется максимальное кол-во сочетаний for(int i=0; i<total; i++){ string w_arr = login; int bits = i; int pos = 0; while (bits>0){ if ((bits&1)==1){ pos++; w_arr = w_arr.Insert(pos,"."); } bits=bits>>1; pos++; } string new_login = w_arr; project.SendInfoToLog(new_login+domen, true); }
Можно в проект добавить список с привязкой к файлу.А как теперь эти все почты получить в текстовом файле?
string login="vasyaivanov"; // логин in
string domen="@gmail.com"; // домен add
int l = login.Length; // количество букв в логине
if (l>11) project.SendErrorToLog("Sorry, too long.", true ); // Слишком длинный логин
double total = Math.Pow(2, l-1); // Вычисляется максимальное кол-во сочетаний
for(int i=0; i<total; i++){
string w_arr = login;
int bits = i;
int pos = 0;
while (bits>0){
if ((bits&1)==1){
pos++;
w_arr = w_arr.Insert(pos,".");
}
bits=bits>>1;
pos++;
}
project.Lists["Список 1"].Add(w_arr+domen); // Добавляем почту в список
}
Не знаю куда задать вопрос, поэтому пишу сюда ))) я написал шаблон на регистрацию в gmail, он регает ништяк примерно 5 аккаунтов с смс сервисами, а потом начинается херня типо невалидный аккаунт. меняю и прокси и юзер агент, а проблема не исчезает, а в браузер этот номер вставляешь, регаешь и всё ништяк, а через зенно не хочет
Есть какие нибудь варианты обхода?
Один скромный вопрос у меня, так как я практически не работаю с почтой в больших объемах: а почему нельзя использовать сервис Temp-mail и использовать сотни различных доменов, предлагаемых этим сервисом?
Настроить можно за пару минут и API есть.


