Free Mail своими руками

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Fliplab, 27 Mar 2010.

  1. Fliplab

    Fliplab Elder - Старейшина

    Joined:
    29 Jul 2008
    Messages:
    123
    Likes Received:
    20
    Reputations:
    3
    Сегодня мы будем учиться проверять мыльца на валид, также как это делает платная программка Free Mail.

    Начнём со всеми любимого Yandex.ru. Чтобы проверить мыло на валид, создаём пост запрос на адресс http://passport.yandex.ru/passport?mode=register и собираем печеньки, конкретнее passport_idkey. Далее мутим запрос с печеньками по адресу http://passport.yandex.ru/passport?mode=constructlogin&login=[LOGIN]&iname=&fname=&reqid= где [LOGIN] - это часть до @, кто не знает :D . Сервер Вернёт нечто такое:
    Code:
    {
        "input_login":"[LOGIN]",
        "input_login_status":"[STATUS]",
        "logins":[
        ],
        "reqid":"0"
    }
    
    где input_login - логин проверки, input_login_status - статус возврата, может принимать следующие значения: occupied - занят, free - свободен. Вот какбы и всё с Yandex.ru. Те кто не знает, то ему пренадлежат следующие мыла: yandex.ru, ya.ru, yandex.ua, yandex.com, narod.ru.

    Следующим по очереди Я мучаю Bigmir.net. Да мир Большой, а запрос к БД даже без проверок идёт. Делаем обычный GET запрос по адресу http://passport.bigmir.net//js/check_free_login/?login=[LOGIN], где [LOGIN] - это логин для проверки. Сервер Вернёт нечто такое:
    Code:
    {"error_id":23,"error_desc":"\u0422\u0430\u043a\u043e\u0439 bigmirID
     \u0437\u0430\u043d\u044f\u0442","loginStatusFree":[STATUS],"freeList":[""],"login":"[LOGIN]"}
    где login - это проверки,a loginStatusFree - статус возврата, может принимать следующие значения: false - занят, true- свободен. C Bigmir.net покончили.

    Теперь мой взор упал на Km.ru. Всё тот же GET запрос мутим на адрес http://www.km.ru/postr/loginchecker.ashx?app=ajax&userLoginName=[LOGIN]&userDomainName=[DOMAIN] , где [LOGIN] - это всё тотже логин для проверки, а [DOMAIN] - это домен из списка: freemail.ru, km.ru, bossmail.ru, girlmail.ru, boymail.ru, megabox.ru, safebox.ru. Так, сервер нам возвращает следующее:
    Code:
    OK: (свободные логины, через запятую)
    
    или
    Code:
    OK: free
    
    , т.е. свободен.

    Пойдём далее. E-mail.ru - этот сервис меня вообще не порадовал, постоянно в дауне. Кароче всё тот же GET на адрес http://www.e-mail.ru/webmail.ok?cmd=reg_frm&check=1&ulogin=[LOGIN]&udomain=[DOMAIN] , где [LOGIN] - это всё тотже логин для проверки, а [DOMAIN] - это домен из списка: e-mail.ru, vipmail.ru, goldmail.ru, goldenmail.ru, supermail.ru, e-mails.ru, emails.ru. Далее парсим страничку, ничё умнее увы не придумад. Нас интересует строка такого типа parent.reg_report([STATUS],'[LOGIN]');. [STATUS] может принимать следующие значения: -1 - некорректен, -2 - недоступен и если > 0 - свободен
    .

    Gmail.ru. Запрос на адрес http://www.gmail.ru/index.sema?a=ujax&sa=reg_login&sid=[LOGIN]. В ответ мы получим Логин «[LOGIN]» занят. или просто пустой ответ. Пустой ответ значит, что логин свободен.

    Rin.ru. Запрос на http://mail.rin.ru/perl/new_user.pl?login=[LOGIN]&mode=1. Далее парсим страничку, если присутствует Такой логин уже зарегистрирован - занят, Логин свободен для регистрации - свободен.

    Mail.ru. Запрос на http://win.mail.ru/cgi-bin/signup. Далее парсим страницу на наличие следующего:
    Code:
    req.sendRequest("checklogin",
        "RegistrationDomain="+(urlencode(domain))+"чтото там"");
    
    .
    Берём от туда следующие данные &x_c3af11079cf4abe2 (в моём случае, в вашем после &x_ другое) и &x_reg_id. В дальнейшем формируем запрос http://win.mail.ru/cgi-bin/checklogin?RegistrationDomain=[DOMAIN]&x_c3af11079cf4abe2=[LOGIN]&x_reg_id=hx4l1tSu, где где [LOGIN] - это всё тотже логин для проверки, а [DOMAIN] - это домен из списка: mail.ru, bk.ru, inbox.ru, list.ru. Не забываем, что x_reg_id у Вас другой. В ответ сервер нам вернёт номер ответа. Ответы следующие: 102 - некорректен, 101 - занят, 0 - свободен.

    Gawab.com. Имеет домен @gawab.com. Запрос на http://www.gawab.com/webfront3/check_user_name.php?user_name=[LOGIN]&action=user. Получим в ответ available - свободен, Username exists - занят.

    Mail.com. Имеет более сотни доменов, их я перечислю позже. Запрос на https://signup.mail.com/query/CheckAvailability.aspx?UserName=[LOGIN]&Domain=[DOMAIN] где где [LOGIN] - это всё тотже логин для проверки, а [DOMAIN] - это домен из списка: 3rdeyefan.com, accountant.com, acdcfan.com, activist.com, adexec.com, aerosmithfan.com, africamail.com, aircraftmail.com, alabama.usa.com, alaska.usa.com, allergist.com, alumni.com, alumnidirector.com, americamail.com, angelic.com, appraiser.net, archaeologist.com, arcticmail.com, argentinamail.com, arizona.usa.com, arkansas.usa.com, artlover.com, asia.com, asia-mail.com, atheist.com, auctioneer.net, australiamail.com, baptized.com, bartender.net, beatlesfan.com, beatthestreet.com, belgium-mail.com, bellair.net, berlin.com, bikerider.com, birdlover.com, blader.com, blading.com, boats4u.com, bowiefan.com, brazilmail.com, brew-master.com, brew-meister.com, britain.com, buddhist.com, california.usa.com, californiamail.com, cash4u.com, catlover.com, cheerful.com, chef.net, chemist.com, chilipeppersfan.com, china-email.com, chinamail.com, claptonfan.com, clerk.com, clubmember.org, collector.org, colorado.usa.com, columnist.com, comic.com, computer4u.com, connecticut.usa.com, consultant.com, contractor.net, coolsite.net, counsellor.com, credit4u.com, customized.com, cyberdude.com, cybergal.com, cyberservices.com, cyber-wizard.com, dallasmail.com, delaware.usa.com, delhimail.com, deliveryman.com, devout.com, digitalbuzz.com, diploma.com, diplomats.com, disciples.com, discofan.com, disposable.com, doctor.com, doctor4u.com, doctormail.com, doglover.com, dr.com, dublin.com, dutchmail.com, elvisfan.com, email.com, engineer.com, englandmail.com, europe.com, europemail.com, execs.com, exterminator.net, fastservice.com, financier.com, finlandmail.com, fireman.net, florida.usa.com, follower.com, food4u.com, gardener.com, geologist.com, georgia.usa.com, germanymail.com, graduate.org, graphic-designer.com, greendayfan.com, greenmail.net, groupmail.com, hairdresser.net, handy-man.com, hawaii.usa.com, hendrixfan.com, hilarious.com, hiphopfan.com, homemail.com, hot-shot.com, housemail.com, humanoid.net, idaho.usa.com, idea4u.com, ilikemoney.com, illinois.usa.com, iname.com, indiamail.com, indiana.usa.com, information4u.com, innocent.com, inorbit.com, instruction.com, instructor.net, insurer.com, intelligencia.com, internetaddress.com, iowa.usa.com, irelandmail.com, israelmail.com, italymail.com, japan.com, japan-mail.com, job4u.com, journalism.com, journalist.com, kansas.usa.com, kentucky.usa.com, kissfans.com, koreamail.com, lawyer.com, lawyer4u.com, ledzepfan.com, legislator.com, lobbyist.com, london.com, londonmail.com, louisiana.usa.com, mad.scientist.com, madonnafan.com, madrid.com, mail.com, mail-me.com, mansonfan.com, massachusetts.usa.com, matchbox20fan.com, meaningofitall.com, metalfan.com, mexicomail.com, minister.com, minnesota.usa.com, mississippi.usa.com, missouri.usa.com, montana.usa.com, moscowmail.com, munich.com, musician.org, muslim.com, mustbuy.com, myself.com, nebraska.usa.com, net-shopping.com, nevada.usa.com, newhampshire.usa.com, newjersey.usa.com, newmexico.usa.com, newsrap.com, newyork.usa.com, nietzsche.net, ninfan.com, nirvanafans.com, nonpartisan.com, northcarolina.usa.com, northdakota.usa.com, norwaymail.com, null.net, nycmail.com, oasisfan.com, oath.com, ohio.usa.com, oklahoma.usa.com, optician.com, oregon.usa.com, orthodontist.net, orthodox.com, pacific-ocean.com, pacificwest.com, parismail.com, pearljamfan.com, pediatrician.com, pennsylvania.usa.com, petlover.com, phishfan.com, photographer.net, physicist.net, planetmail.com, planetmail.net, polandmail.com, politician.com, post.com, presidency.com, priest.com, prodigyfan.com, programmer.net, protestant.com, publicist.com, pumpkinsfan.com, qualityservice.com, radioheadfan.com, radiologist.net, radiostar.com, ravemail.com, realtyagent.com, reborn.com, reggaefan.com, registerednurses.com, reincarnate.com, religions.com, religious.com, remfan.com, repairman.com, representative.com, rescueteam.com, resourceful.com, resurrection.com, revenue.com, revolutionist.com, rhodeisland.usa.com, rocketship.com, rome.com, safrica.com, saintly.com, salesperson.net, samerica.com, sanfranmail.com, saopaulino.com, scientist.com, scotlandmail.com, screenstar.com, secretary.net, selfaware.com, singapore.com, singaporemail.com, skafan.com, skibuff.com, snakebite.com, socialworker.net, sociologist.com, solution4u.com, songwriter.net, southcarolina.usa.com, southdakota.usa.com, spainmail.com, surferdude.com, surgical.net, swedenmail.com, swingfan.com, swissmail.com, taiwanmail.com, tampamail.com, teacher.com, teachers.org, tech-center.com, techie.com, technologist.com, tennessee.usa.com, texas.usa.com, theplate.com, therange.com, therapist.net, toke.com, tokyo.com, tokyomail.com, toothfairy.com, topservice.com, toriamosfan.com, torontomail.com, tvstar.com, u2fan.com, umpire.com, universalmail.com, urgentmail.com, usa.com, utah.usa.com, virginia.usa.com, wallet.com, washington.usa.com, washingtondc.usa.com, webname.com, westvirginia.usa.com, wisconsin.usa.com, worker.com, workmail.com, worshipper.com, writemail.com, writeme.com, wutangfan.com, wyoming.usa.com . В ответ получим либо <result>False</result> - занят, <result> Reserve </result> - заблокирован или ещё что-то, <result> True </result> - свободен.

    Но вот вроде бы и всё пока.
     
    #1 Fliplab, 27 Mar 2010
    Last edited: 27 Mar 2010
    1 person likes this.
  2. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    А не проще просто подключаться по pop3 или smtp протоколу?
     
    _________________________
  3. Fliplab

    Fliplab Elder - Старейшина

    Joined:
    29 Jul 2008
    Messages:
    123
    Likes Received:
    20
    Reputations:
    3
    Не, не проще.
     
  4. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    обоснуй
     
    _________________________
  5. Fliplab

    Fliplab Elder - Старейшина

    Joined:
    29 Jul 2008
    Messages:
    123
    Likes Received:
    20
    Reputations:
    3
    Обосновываю, если ты будешь юзать pop3 или smtp, то тебе придётся юзать прокси это раз, плюс возможнось поблочить аки.
     
  6. s0l_ir0n

    s0l_ir0n Active Member

    Joined:
    14 Mar 2009
    Messages:
    399
    Likes Received:
    144
    Reputations:
    18
    Во-первых прокси надо юзоть всегда. Во-вторых - когда ты послыаешь реквесты на скрипты входа, думаешь твой ип не передается? ;)
     
  7. Fliplab

    Fliplab Elder - Старейшина

    Joined:
    29 Jul 2008
    Messages:
    123
    Likes Received:
    20
    Reputations:
    3
    s0l_ir0n Да передавай его сколько влезит. По ip не блочат.
     
  8. s0l_ir0n

    s0l_ir0n Active Member

    Joined:
    14 Mar 2009
    Messages:
    399
    Likes Received:
    144
    Reputations:
    18
    Ну тогда получается что исходя из этих слов, пост номер 5 вообще не имеет смысла
     
  9. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    2 s0l_ir0n он имеет тот факт, что при большом кол-ве запросов через SMTP и POP сервак тебя забанит по IP. А в случае Web теста - он тебя не будет банить.
     
  10. s0l_ir0n

    s0l_ir0n Active Member

    Joined:
    14 Mar 2009
    Messages:
    399
    Likes Received:
    144
    Reputations:
    18
    А, теперь понятно. Спасибо за разъяснение.