Как выдрать recaptcha

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by kakeolala, 10 May 2011.

  1. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    Собственно пишу очередной регер - только под живой журнал

    Как оттуда достать картинку на капчу от recaptcha ?
     
  2. shadowrun

    shadowrun Banned

    Joined:
    29 Aug 2010
    Messages:
    842
    Likes Received:
    170
    Reputations:
    84
    На чем трудишься?
     
  3. seosimf

    seosimf Member

    Joined:
    3 Mar 2011
    Messages:
    271
    Likes Received:
    44
    Reputations:
    6
    Ишим API кей выданный гугл, для жж это k=6LegWAEAAAAAANJcmtbLTuHlG7AbDzLPxvimCw_Z, загружаем JavaScript подставляя Api key - https://www.google.com/recaptcha/api/challenge?k=6LegWAEAAAAAANJcmtbLTuHlG7AbDzLPxvimCw_Z, отуда парсим значения challenge : 'Сессион_Id', загружаем капчу https://www.google.com/recaptcha/api/image?c=Сессион_Id, в Post запросе на регистрацию добавляем содержимое recaptcha_challenge_field = Сессион_Id и recaptcha_response_field = значения распознанной капчи, УСЕ.
     
    #3 seosimf, 10 May 2011
    Last edited: 10 May 2011
  4. kolored

    kolored New Member

    Joined:
    16 Sep 2009
    Messages:
    18
    Likes Received:
    1
    Reputations:
    0
    Помню здесь обсуждали
    http://forum.antichat.ru/showthread.php?t=256636
     
  5. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    спс seosimf
     
  6. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    на delphi пишу
     
  7. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    непашет чето ваш вариант - по ссылке https://www.google.com/recaptcha/api/image?c=Сессион_Id он мне отображает совсем другую капчу не которая на сайте
     
  8. seosimf

    seosimf Member

    Joined:
    3 Mar 2011
    Messages:
    271
    Likes Received:
    44
    Reputations:
    6
    Ну естественно, при каждом запросе https://www.google.com/recaptcha/api/image?c=Сессион_Id выдается новая капча, это все равно что нажать на кнопку обновления капчи.
    То есть при каждом обращении к https://www.google.com/recaptcha/api/image?c=Сессион_Id, Сессион_Id будет соответствовать та капча которая отдана последней.
     
    #8 seosimf, 11 May 2011
    Last edited: 11 May 2011
  9. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    ну так если при каждом обращение к https://www.google.com/recaptcha/api/image?c=Сессион_Id выдается новая капча - как тогда выдрать картинку капчи то ?
     
  10. 090808

    090808 Member

    Joined:
    15 Mar 2009
    Messages:
    171
    Likes Received:
    46
    Reputations:
    10
    Так и вырвать. В исходнике ты получаешь SSID капчи, Браузер получает картинку капчи используя этот SSID. А в софте ты получаешь исходник и не запрашивая картинку капчи. Соответсвенно на руках у тебя запрос на капчу в софте 1 раз, отправляешь её на разгадывание и отправляешь с её SSID и её кодом.
     
    1 person likes this.
  11. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    можете на примере обьяснить - не врубаюсь вообще
     
  12. 090808

    090808 Member

    Joined:
    15 Mar 2009
    Messages:
    171
    Likes Received:
    46
    Reputations:
    10
    Примерно если ты понимаешь delphi, то примерно будет так.


    var antichat:string;
    begin
    antichat:=http.get('Сайт где капча');
    Вырываешь из переменной "antichat" SSID капчи.
    И твоя капча выглядит как тебе говорили в пред. постах...
    аля: http://antichat.ru/blabla/captcha.php?SSID.....

    Сохраняешь эту картинку и вводишь вручную либо отсылаешь сразу на антигейт. И разгадываешь её код.

    Ну а далее уже выполняешь запрос уже с разгаданной капчей.

    Примерно: http.get('http://antichat.ru/blabla/captcha.php?captchaSSID=тут SSID капчи которую разгадывал&captchakey=тут ключ разгаданной капчи.




    Вроде более понятнее некуда ;)
     
  13. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    уффффффф.
    Ну загружу страницу для того чтобы спарсить - далее будет ссылка https://www.google.com/recaptcha/api/noscript?k=6LegWAEAAAAAANJcmtbLTuHlG7AbDzLPxvimCw_Z , а при сохранение надо запросить ее - и выдастся уже другая капча совершенно
     
  14. xophet

    xophet Member

    Joined:
    16 Apr 2011
    Messages:
    617
    Likes Received:
    49
    Reputations:
    5
    "Пишу ОЧЕРЕДНОЙ реггер" не смеши мои подковы :)
    Блин, куда тебе автореггер то писать :)
    Проснифать чтоли впадлу было?
    Делаешь запрос сюда:
    Code:
    http://www.google.com/recaptcha/api/challenge?k=6LegWAEAAAAAANJcmtbLTuHlG7AbDzLPxvimCw_Z&ajax=1&cachestop=0.18010240938088584&lang=en
    
    Получаешь ответ:
    Code:
    var RecaptchaState = {
        site : '6LegWAEAAAAAANJcmtbLTuHlG7AbDzLPxvimCw_Z',
        challenge : '03AHJ_VuvJ1AIFdt8beMM26Uc50YijDBJQA4ViglfAxND6KAtEUb7Y0AGPN6FseWiopyM9y31PDRjQ5a6CnWvRxUNSgKrM2Ha7tpqXnhQCzocrG3KYSiBsaSWea5MpM_dezJpNSNVUA4_1dzSMjT3LRPn8GYGktqbGHA',
        is_incorrect : false,
        programming_error : '',
        error_message : '',
        server : 'http://www.google.com/recaptcha/api/',
        timeout : 18000
    };
    
    Recaptcha.challenge_callback();
    
    парсишь значение поля challenge (без двоеточек и кавычек :) )
    запоминаешь его (в переменную (назовем ее challenge). Хотя можешь и на листочек)
    Теперь по адресу 'http://www.google.com/recaptcha/api/image?c='+challenge
    будет доступна твоя картинка (ВНИМАНИЕ, ФОКУС!! она всегда будет неизменна)
    а потом отправляй challenge как recaptcha_challenge_field, а разгаданный ответ как recaptcha_response_field

    P.S.Если и тут возникнут проблемы, то я даже не знаю, что тебе посоветовать :( Буквально на днях до всего допер сам, а ты форум терроризируешь, юзай сниффер и всё получится.
     
    1 person likes this.
  15. buldozer790

    buldozer790 New Member

    Joined:
    25 Nov 2010
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Разбирался как то с этой штукой, я выдирал из <noscript>. там вроде iframe создавался.
    дергаешь этот ифрейм и выгребаешь из html тэг img, дальше дергаешь картинку. ну и остальное все по плану.
    Советую юзоть firebug для FF, там есть DOM инспектор и раздел сеть, в котором можно посмотреть запросы и ответы с хидерами. весьма удобная штука.
     
  16. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    2xophet
    Спасибо - форум и нужен чтобы задавать и тупые и нетупые вопросы, не тольео жн делиться то что сделал.
    А не мог бы ты сказать кто ты если у тя имеются подковы ?
     
  17. xophet

    xophet Member

    Joined:
    16 Apr 2011
    Messages:
    617
    Likes Received:
    49
    Reputations:
    5
    Что есть "подковы"?
    _____________________________
    Code:
    http://api.recaptcha.net/challenge?k=6LegWAEAAAAAANJcmtbLTuHlG7AbDzLPxvimCw  _Z
    
    можно без всей прочей муры типа "&ajax..."
     
    #17 xophet, 12 May 2011
    Last edited: 12 May 2011
  18. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    ты думаешь если я не смог эту антикапчу обойти - немогу писать регер чтоли. Просто на других сайтах - тупо ссылка на картинку.
    Я успешно написал авторегеры под блоги через которые траф идет на фарму - Я НУБ! Куда мне писать то !
     
  19. xophet

    xophet Member

    Joined:
    16 Apr 2011
    Messages:
    617
    Likes Received:
    49
    Reputations:
    5
    текс. просто я начинаю свои проги писать со сниффера: смотрю откуда чего берется и куда что уходит.

    К стати, если угодно ссылку на картинку выдрать, то нужно выполнить на странице java-скрипты (изначально я так и делал).
    Грузишь страницу гет-ом, а потом в TWebBrowser ее и дожидаешься выполнения скриптов.
    Теперь из TWebBrowser.Document выдираешь текст с уже выполненными скриптами, и там будет ссылка на картинку.
     
    #19 xophet, 12 May 2011
    Last edited: 12 May 2011
  20. 090808

    090808 Member

    Joined:
    15 Mar 2009
    Messages:
    171
    Likes Received:
    46
    Reputations:
    10
    Ничего повторно не загрузится!

    Капча будет та которая надо!