Собственно пишу очередной регер - только под живой журнал Как оттуда достать картинку на капчу от recaptcha ?
Ишим 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 = значения распознанной капчи, УСЕ.
непашет чето ваш вариант - по ссылке https://www.google.com/recaptcha/api/image?c=Сессион_Id он мне отображает совсем другую капчу не которая на сайте
Ну естественно, при каждом запросе https://www.google.com/recaptcha/api/image?c=Сессион_Id выдается новая капча, это все равно что нажать на кнопку обновления капчи. То есть при каждом обращении к https://www.google.com/recaptcha/api/image?c=Сессион_Id, Сессион_Id будет соответствовать та капча которая отдана последней.
ну так если при каждом обращение к https://www.google.com/recaptcha/api/image?c=Сессион_Id выдается новая капча - как тогда выдрать картинку капчи то ?
Так и вырвать. В исходнике ты получаешь SSID капчи, Браузер получает картинку капчи используя этот SSID. А в софте ты получаешь исходник и не запрашивая картинку капчи. Соответсвенно на руках у тебя запрос на капчу в софте 1 раз, отправляешь её на разгадывание и отправляешь с её SSID и её кодом.
Примерно если ты понимаешь 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=тут ключ разгаданной капчи. Вроде более понятнее некуда
уффффффф. Ну загружу страницу для того чтобы спарсить - далее будет ссылка https://www.google.com/recaptcha/api/noscript?k=6LegWAEAAAAAANJcmtbLTuHlG7AbDzLPxvimCw_Z , а при сохранение надо запросить ее - и выдастся уже другая капча совершенно
"Пишу ОЧЕРЕДНОЙ реггер" не смеши мои подковы Блин, куда тебе автореггер то писать Проснифать чтоли впадлу было? Делаешь запрос сюда: 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.Если и тут возникнут проблемы, то я даже не знаю, что тебе посоветовать Буквально на днях до всего допер сам, а ты форум терроризируешь, юзай сниффер и всё получится.
Разбирался как то с этой штукой, я выдирал из <noscript>. там вроде iframe создавался. дергаешь этот ифрейм и выгребаешь из html тэг img, дальше дергаешь картинку. ну и остальное все по плану. Советую юзоть firebug для FF, там есть DOM инспектор и раздел сеть, в котором можно посмотреть запросы и ответы с хидерами. весьма удобная штука.
2xophet Спасибо - форум и нужен чтобы задавать и тупые и нетупые вопросы, не тольео жн делиться то что сделал. А не мог бы ты сказать кто ты если у тя имеются подковы ?
Что есть "подковы"? _____________________________ Code: http://api.recaptcha.net/challenge?k=6LegWAEAAAAAANJcmtbLTuHlG7AbDzLPxvimCw _Z можно без всей прочей муры типа "&ajax..."
ты думаешь если я не смог эту антикапчу обойти - немогу писать регер чтоли. Просто на других сайтах - тупо ссылка на картинку. Я успешно написал авторегеры под блоги через которые траф идет на фарму - Я НУБ! Куда мне писать то !
текс. просто я начинаю свои проги писать со сниффера: смотрю откуда чего берется и куда что уходит. К стати, если угодно ссылку на картинку выдрать, то нужно выполнить на странице java-скрипты (изначально я так и делал). Грузишь страницу гет-ом, а потом в TWebBrowser ее и дожидаешься выполнения скриптов. Теперь из TWebBrowser.Document выдираешь текст с уже выполненными скриптами, и там будет ссылка на картинку.