if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=script ATTR=src:*recaptcha*')>0){ f1='FRAME NAME=undefined\n'; iimPlayCode('SET !TIMEOUT_STEP 0\n'+f1+'TAG POS=1 TYPE=DIV ATTR=ROLE:presentation'); iimPlayCode('WAIT SECONDS=5'); iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=iframe ATTR=src:*recaptcha/api2/frame?c=* extract=htm'); f2='FRAME '+iimGetExtract().match(/name=".*?"/)+'\n'; iimPlayCode('ONDOWNLOAD FOLDER=C:\\CapNum\\ FILE=cap.jpg WAIT=YES\n'+f2+'TAG POS=1 TYPE=DIV ATTR=class:rc-imageselect-payload CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT'); }
Вариант 1
Использование сторонней программы.
Качаем convert.exe и распаковываем в папку куда сохраняются капчи (допустим C:\\CapNum\\).Вот этот код уменьшит и обрежет картинку/капчу cap.jpg в 2 раза (создаст рядом уменьшенную cap2.jpg)Выделить кодКод:
var Cc=Components.classes, Ci=Components.interfaces; var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); var args=['convert', 'C:\\CapNum\\cap.jpg', '-resize', '200x300', '-crop', '194x253+4+4', 'C:\\CapNum\\cap2.jpg']; file.initWithPath("C:\\CapNum\\convert.exe"); proc.init(file); proc.run(false, args, args.length);
Вариант 2
Использование PHP
Качаем вот это и распаковываем в папку C:\\CapNum\\.
Создаём файлик 1.php в папке куда сохраняются капчи C:\\CapNum\\.Скрипт 1.phpВыделить кодКод:
<?php $img=imagecreatefromjpeg("C:/CapNum/cap.jpg"); $des=imagecreatetruecolor(200,300); $col=imagecolorallocate($des, 0x00, 0x00, 0xFF); imagecopyresized($des, $img, 0, 0, 0, 0, 200, 300, 384, 510); imagestring($des, 5, 5, 70, "1", $col); imagestring($des, 5, 73, 70, "2", $col); imagestring($des, 5, 140, 70, "3", $col); imagestring($des, 5, 5, 148, "4", $col); imagestring($des, 5, 73, 148, "5", $col); imagestring($des, 5, 140, 148, "6", $col); imagestring($des, 5, 5, 225, "7", $col); imagestring($des, 5, 73, 225, "8", $col); imagestring($des, 5, 140, 225, "9", $col); imagejpeg($des, 'C:/CapNum/cap2.jpg'); imagedestroy($des); imagedestroy($img); ?>Вот этот код, для запуска 1.php, уменьшит картинку/капчу cap.jpg в 2 раза (создаст рядом уменьшенную cap2.jpg).
И так же пронумерует все варианты ответов (маленькие картинки) от 1 до 9 .Выделить кодКод:
var Cc=Components.classes, Ci=Components.interfaces; var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); var args=['C:\\CapNum\\1.php']; file.initWithPath('C:\\CapNum\\PHP\\PHP.exe'); // <--- Путь до PHP.exe proc.init(file); proc.run(false, args, args.length);
function resize(){ var Cc=Components.classes, Ci=Components.interfaces, c, Path='C:\\CapNum\\'; var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); var args=['convert', 'C:\\CapNum\\cap.jpg', '-resize', '200x300', '-crop', '194x253+4+4', 'C:\\CapNum\\cap2.jpg']; file.initWithPath(Path+"convert.exe"); proc.init(file); proc.run(false, args, args.length);} var key='тут ключик от рукапчи'; var bit='тут биткоин кошель'; f1='FRAME NAME=undefined\n'; if(iimPlayCode('SET !TIMEOUT_STEP 0\n'+f1+'TAG POS=2 TYPE=DIV ATTR=TXT:reCAPTCHA')>0){ iimPlayCode('SET !TIMEOUT_STEP 0\n'+f1+'TAG POS=1 TYPE=DIV ATTR=ROLE:presentation'); iimPlayCode('WAIT SECONDS=5'); iimPlayCode('SET !TIMEOUT_STEP 0\n'+f1+'TAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM'); if(iimGetExtract().indexOf('checked="true')<0){ iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=iframe ATTR=src:*recaptcha/api2/frame?c=* extract=htm'); f2='FRAME '+iimGetExtract().match(/name=".*?"/)+'\n'; if(iimPlayCode('SET !TIMEOUT_STEP 0\n'+f2+'TAG POS=1 TYPE=DIV ATTR=CLASS:rc-imageselect-desc-wrapper')>0){ for(a=1; a<9; a++){ if(iimPlayCode('SET !TIMEOUT_STEP 0\n'+f2+'TAG POS=1 TYPE=DIV ATTR=CLASS:rc-image-tile-33')>0) break; else iimPlayCode('SET !TIMEOUT 30\n'+f2+'EVENT TYPE=CLICK SELECTOR="#recaptcha-reload-button" BUTTON=0');} iimPlayCode('ONDOWNLOAD FOLDER='+Path+' FILE=cap.jpg WAIT=YES\n'+f2+'TAG POS=1 TYPE=DIV ATTR=class:rc-imageselect-payload CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT'); iimPlayCode('WAIT SECONDS=2'); resize(); // <--- Уменьшаем картинку iimPlayCode('WAIT SECONDS=2'); iimPlayCode('TAB OPEN\nTAB T=2'); /*** -= Отправляем на распознавание =- ***/ for(sk=0; sk<=9; sk++){ iimPlayCode('SET !TIMEOUT 30\nURL GOTO=imacros2.rucaptcha.com/new/'); iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+key); iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Path+'cap2.jpg'); iimPlayCode('SET !TIMEOUT 80\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*'); iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); if(iimGetExtract().search(/\d/)!=-1){ c=iimGetExtract().match(/\d+/g).join(''); iimDisplay(c); if(iimGetExtract().indexOf("ERROR")<0) break;}}} iimPlayCode('WAIT SECONDS=1\nTAB CLOSE'); if(Number(c)>0){ for(k=0; k<c.length; k++){ iimPlayCode('SET !TIMEOUT_STEP 0\n'+f2+'TAG POS='+c[k]+' TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox');} iimPlayCode('SET !TIMEOUT 30\n'+f2+'EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0'); //<--- Код нажатия кнопки Продолжить, на некоторых сайтах может отличаться iimPlayCode('SET !TIMEOUT 30\n'+f2+'EVENT TYPE=CLICK SELECTOR="#recaptcha-verify-button" BUTTON=0'); iimPlayCode('WAIT SECONDS=2');}} iimPlayCode('SET !TIMEOUT_STEP 0\n'+f1+'TAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM'); if(iimGetExtract().indexOf('checked="true')>0){ iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT='+bit); // <--- Водим биткоин кошель iimPlayCode('SET !TIMEOUT 30\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*'); // <--- Нажатие кнопки на самом сайте, тег кнопки может отличаться iimPlayCode('WAIT SECONDS=1');}}
var Cc=Components.classes, Ci=Components.interfaces,a,b,c,d,e,f=0,refka='1AWqZ3ke9z8eSvZWFPeHTY8a3jmQNWKhSa'; var cok=Cc["@mozilla.org/cookiemanager;1"].getService(Ci.nsICookieManager); var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch); var str=Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString); var alt=Cc["@mozilla.org/embedcomp/prompt-service;1"].getService(Ci.nsIPromptService); var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n'; kap="javascript:document.write('<b><h1>Распознаём капчу !</h1></b>');window.stop();"; Path='C:\\CapNum\\solve\\'; bit='биткоин кошель'; //for(;;){ del_cookis(); iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS\nSET !TIMEOUT 30\nURL GOTO=crypto4free.net?r='+refka); a=iimPlayCode(t0+'TAG POS=1 TYPE=LABEL FORM=NAME:NoFormName ATTR=TXT:*our*address*'); b=iimPlayCode(t0+'TAG POS=1 TYPE=LABEL FORM=NAME:NoFormName ATTR=TXT:Ваш*адрес:'); c=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=ID:faucet-label'); d=iimPlayCode(t0+'TAG POS=1 TYPE=div ATTR=ID:adcopy-outer'); e=iimPlayCode(t0+'TAG POS=1 TYPE=* ATTR=TXT:*ou*wait*'); if((a>0||b>0||c>0) && d>0 && e<0) solve(); weit(361); //} /***************************************************/ function solve(){ var txt='', w=0; for(q=0; q<2; q++){ if(iimPlayCode(t0+'TAG POS=1 TYPE=* ATTR=TXT:*ou*wait*')>0) break; for(z=0; z<20; z++){ /* Если грязная капча обновляем */ if(iimPlayCode(t0+'TAG POS=1 TYPE=IMG ATTR=ID:adcopy-puzzle-image-image')>0 || iimPlayCode(t0+'TAG POS=1 TYPE=IMG ATTR=SRC:*api.solvemedia.com/papi/media?c=*')>0) reload(); else{ z=100; for(w=0; w<=60; w++){ /* Ищем капчу с тегом SPAN slog (которая ломается без распознавания) или флеш капчу или обычный канвас (капча с ровными буквами) */ if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=SPAN ATTR=ID:slog')>0 || iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:*playIcn')>0 || iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=ID:overlay')>0 || iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:slog')>0){ /* Если ломаемая капча извлекаем текст и нижний код пропускаем */ if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=SPAN ATTR=ID:slog')>0){ iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT'); txt=iimGetLastExtract();} /* Если флеш капча, сохраняем на комп и запускаем функцию flesh() и нижний код пропускаем */ else if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:*playIcn')>0 || iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=ID:overlay')>0){ if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:*playIcn')>0) weit(10); iimPlayCode('ONDOWNLOAD FOLDER='+Path+' FILE=a.jpg WAIT=YES\nFRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=ID:overlay CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT'); iimPlayCode(t0+'TAG POS=1 TYPE=A ATTR=TXT:Return*Page'); weit(1); flesh();} /* Если обычный канвас (капча с ровными буквами), сохраняем на комп и запускаем функцию canvas() */ else if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:slog')>0){ iimPlayCode('ONDOWNLOAD FOLDER='+Path+' FILE=a.jpg WAIT=YES\nFRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:*slog CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');weit(1); canvas();}w=100;}}}} /* Если ничего из верхнего не помогло, грязная капча */ if(w!=100){ iimPlayCode('ONDOWNLOAD FOLDER='+Path+' FILE=a.jpg WAIT=YES\nTAG POS=1 TYPE=IMG ATTR=SRC:http://api.solvemedia.com/papi/media?c=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');weit(1); ... // Тут отправка на сервис распознавания ... } txt=txt.replace(/\W/gi,"").replace(/[0-9]/gi,"").replace(/_/gi,""); if(txt!='' && txt.length>5){ iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT='+bit); iimPlayCode(t0+'TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT='+bit); iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:adcopy_response CONTENT="'+txt+'"');weit(1); if(iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*')<0) iimPlayCode(t3+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:*Get*');} else reload(); if(iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=CLASS:alert*alert*&&TXT:*satoshi*sen*')>0) q=10;}} /***-= Обрабатываем флеш капчу =-***/ function flesh(){ iimDisplay('Обрабатываем флеш капчу'); iimPlayCode('TAB OPEN\nTAB T=2\nURL GOTO="'+kap+'"'); var Cc=Components.classes, Ci=Components.interfaces, args=["C:\\CapNum\\solve\\flesh.vbs"]; var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); file.initWithPath("C:\\Windows\\System32\\wscript.exe"); proc.init(file); proc.run(false, args, args.length); weit(15); iimPlayCode('URL GOTO=file:///'+Path+'otvet.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); txt=iimGetExtract();weit(1); iimPlayCode('TAB CLOSE');} /***-= Обрабатываем канвас капчу =-***/ function canvas(){ iimDisplay('Обрабатываем канвас капчу'); iimPlayCode('TAB OPEN\nTAB T=2\nURL GOTO="'+kap+'"'); var Cc=Components.classes, Ci=Components.interfaces, args=["C:\\CapNum\\solve\\canvas.vbs"]; var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); file.initWithPath("C:\\Windows\\System32\\wscript.exe"); proc.init(file); proc.run(false, args, args.length); weit(15); iimPlayCode('URL GOTO=file:///'+Path+'otvet.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); txt=iimGetExtract();weit(1); iimPlayCode('TAB CLOSE');} /***-= Удаляем куки =-***/ function del_cookis(){ iimDisplay('Удаляем куки'); var iter=cok.enumerator; while (iter.hasMoreElements()){var cookie=iter.getNext(); if(cookie instanceof Ci.nsICookie){ cok.remove(cookie.host, cookie.name, cookie.path, cookie.blocked);}}} /***-= Обновление капчи =-***/ function reload(){iimPlayCode(t3+'TAG POS=1 TYPE=IMG ATTR=SRC:*solvemedia.com/media/reload*.gif'); weit(1);} /***-= Ожидание =-***/ function weit(s){iimPlayCode('WAIT SECONDS='+s);}
Отредактировано PRESIDENT (19-04-2016 18:30:59)
Отсутствует
Спасибо, большое Андрей.
я твои примеры в отдельный файл сохраняю.
Как лекции нетленки.
Добавлено 09-11-2015 10:38:30
Слушай, а есть возможность вбивать адреса в поля ввода адреса гарантированно всегда.
Просто иногда когда iMacrosom записываешь команду ввода адреса, вот такой пример:
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:5WrrP5v7jIWbsfED5TyRr0aL5O7JCH CONTENT=
Отредактировано Egorushka1974 (09-11-2015 10:38:30)
Отсутствует
Посмотри здесь помоему это твой случай
Отсутствует
Да, похоже мой случай, вечером попробую, скрипт дома.
Если получится отпишусь.
Добавлено 09-11-2015 12:49:53
Слушай, слышал народ ведет работы по обходу FunCaptcha. Не сталкивался? Сколько гуглю, пока не видел.
Отредактировано Egorushka1974 (09-11-2015 12:49:53)
Отсутствует
Вопросик по макросу и капче:
Может ли макрос разгадывать капчу без сторонних сервисов типа "антигейт" и "рукапча"?
Возможно ли это в принципе и сложно ли теоретически написать такую программу, чтоб разгадывала капчу?
То есть, чтоб не люди разгадывали а именно сам бот?
Отсутствует
dvitkovs пишет:
Вопросик по макросу и капче:
Может ли макрос разгадывать капчу без сторонних сервисов
Скорее всего, не может. Фактически, тут нужен искусственный интеллект. Либо, для разгадывания примитивных капч, которых сейчас наверное уже нет, придётся использовать в связке с iMacros'ом сторонние программы, например, для сопоставления цвета пикселей на картинках. Либо для сравнения капчи с эталонами.
С некоторыми алгоритмами можно ознакомиться по этим ссылкам:
Отредактировано udalov (10-11-2015 18:29:11)
Отсутствует
dvitkovs
Теоретически можно.
Отсутствует
PRESIDENT мне вот такую капчу взламывать надо:
PRESIDENT пишет:
Солвемедия и так прекрасно ломается, безо всяких программ.
Что есть Солвемедия?
Добавлено 10-11-2015 19:16:49
Если есть ссылка на скачивание (или если есть сама программа CapMonster), дай мне в личку, а то я что-то не нашёл взломанной или патченой версии CapMonster.
Везде предлагаются только платные или демо-версии.
Отредактировано dvitkovs (10-11-2015 19:16:49)
Отсутствует
PRESIDENT пишет:
скрытый текстВыделить кодКод:
for(w=1; w<=20; w++){ if(iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=2 TYPE=DIV ATTR=TXT:reCAPTCHA')>0){ iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark'); iimPlayCode('WAIT SECONDS=5');
Может я ошибаюсь, но такой цикл на весь скрипт не будет работать в 100% случаев.
Сам видел неоднократно, что разница в номерах фреймов не всегда равна 1, тогда этот кусок кода
if(Number(c)>0){ w1=w+1; for(k=0; k<c.length; k++){ iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w1+'\nTAG POS='+c[k]+' TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox');} iimPlayCode('SET !TIMEOUT 30\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0');
TAB T=1 URL GOTO=http://www.rapidbitco.in/?r=1DseQ77TowS7BibmD222vrHYcqmwfc8YxH FRAME F=31 TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT: FRAME F=34 TAG POS=7 TYPE=IMG ATTR=SRC:https://www.google.com/recaptcha/api2/payload?c=03AHJ
Отредактировано Egorushka1974 (12-11-2015 16:26:53)
Отсутствует
удалено
правила форума:
2. Не рекомендуется:
2.15 Производить личную переписку в общей теме. Для личной переписки есть Личный ящик.
InfSub
Отсутствует
Egorushka1974 пишет:
возможно ли сделать цикл перебора номеров
фреймов при выборе картинок
Исправил основной скрипт, теперь ищет фрейм капчи.
Отсутствует
dvitkovs
Отсутствует
PRESIDENT пишет:
скрытый текстМой же пост на форуме зенопостера откопал, мустер это мой логин там
Так?
Отредактировано udalov (13-11-2015 17:36:55)
Отсутствует
И еще такой вопрос, скрипт работал раз 10,
потом поперли двойные задания, т.е. решил раз правильно,
просит еще раз решить, скрипт конечно идет дальше, сатоши не получены, переходим к следующему крану.
Если завести гугл-аккаунт, перестанет предлагать
решить задачу второй раз?
Отсутствует
Egorushka1974 пишет:
...
просит еще раз решить, скрипт конечно идет дальше, сатоши не получены, переходим к следующему крану.
Так вынеси этот код в отдельный скрипт, допустим recaptcha.js.
И уже в основном скрипте, с кранами/с сайтами, после клика проверяй появилась ли капча второй раз.
И если нужно то запускай скрипт по новой recaptcha.js
Отсутствует
PRESIDENT пишет:
Egorushka1974 пишет: ... просит еще раз решить, скрипт конечно идет дальше, сатоши не получены, переходим к следующему крану.Так вынеси этот код в отдельный скрипт, допустим recaptcha.js.И уже в основном скрипте, с кранами/с сайтами, после клика проверяй появилась ли капча второй раз.И если нужно то запускай скрипт по новой recaptcha.js
тогда вся идея сбора с кранов с reCAPTHA теряется, заплатить 5 коп за решение капчи и взять 400-500 сатошей, что примерно равно от 7-8 коп, это приемлемо, а решать еще два раза, в итоге смысл теряется.
Отсутствует
Egorushka1974 пишет:
а решать еще два раза, в итоге смысл теряется
И что ты предлагаешь.
Давай предложи алгоритм распознавания капчи, а мы уже подумаем как это в коде реализовать.
Отредактировано PRESIDENT (13-11-2015 21:26:13)
Отсутствует
PRESIDENT пишет:
И что ты предлагаешь.
Давай предложи алгоритм распознавания капчи, а мы уже подумаем как её в коде реализовать.
я не критикую, просто пытаюсь логику скрипта довести до конца, я ведь писал, что цикл перебирает номера
фреймов капчи при вызове капчи и номера фреймов при расставлении картинок, но не хранит правильные значения, смотри пост №15.
если хотя бы это довести до конца.
Отсутствует
Egorushka1974 пишет:
но нажатие кнопки ПОДТВЕРДИТЬ на капче не произойдет
Только что проверил на нескольких разных сайтах, всё прекрасно нажимается.
Везде фреймы разные были и скрипт их корректно нашёл.
Отсутствует
PRESIDENT пишет:
Только что проверил на нескольких разных сайтах, всё прекрасно нажимается.
Везде фреймы разные были и скрипт их корректно нашёл.
Согласен, признаю, был не прав.
Отсутствует
PRESIDENT пишет:
Солвемедия и так прекрасно ломается, безо всяких программ.
Ну на почте рамблер наверное не солвемедия, и её просто так не взломаешь? Или я не прав?
Кстати, а как на счёт вот такой капчи:
Отсутствует
dvitkovs пишет:
это солвемедия или нет?
Как взломать? Тут же только одни цифры, а значит это упрощает работу, верно?
А если ДА, то значит можно её взламывать прогой Tesseract OCR?
Нет, это не солвмедия. Может, этой прогой и можно... Находите программу, сохраняете себе 50-100 таких капч и пробуете программой их распознать. Вот моя попытка распознавания капчи программой
Отсутствует
Маленько погуглив, пришол к выводу что наиболее целесообразно и с наименьшими затратами времени и энергоресурсов, представляется использование программы, которую подсказал PRESIDENT. Это - CapMonster
Отредактировано dvitkovs (16-11-2015 01:09:21)
Отсутствует
С подачи PRESIDENT попытался написать JS скрипт, ломающий капчу Solve Media. Выглядит она так (вернее, так выглядит вариант этой капчи, у которого можно найти ответ в коде страницы)
for(w=1; w<=30; w++){ // перебирает значение фрейма, НО, после того, как фрейм найден (напр, 25) и его значение сохранено в файл, перебор идёт дальше до 30 if(iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=SPAN ATTR=ID:slog')>0){ if(w<0) // <--- если тег ATTR=ID:slog не найден, то обновить капчу, не работает iimPlayCode('SET !TIMEOUT 10\nTAG POS=1 TYPE=IMG ATTR=SRC:https://api-secure.solvemedia.com/media/reload-whV2.gif'); // эта команда должна обновлять капчу, не работает никогда. else (iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=solvemedia.txt') // <--- если найден тег ATTR=ID:slog, то спарсить значение в файл работает. )}}
for(w=1; w<=30; w++){ // перебирает значение фрейма, НО, после того, как фрейм найден (напр, 25) и его значение извлечено, перебор идёт дальше до конца a=iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT'); if(a<0) // <--- если тег ATTR=ID:slog не найден, то обновить капчу, не работает iimPlayCode('SET !TIMEOUT 10\nTAG POS=1 TYPE=IMG ATTR=SRC:https://api-secure.solvemedia.com/media/reload-whV2.gif'); // эта команда должна обновлять капчу else (iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT'));} // <--- если найден тег ATTR=ID:slog, то извлечь его значение работает
Отсутствует