Обсуждение скриптов и вопросов связанных с борьбой с капчами.
========================================================================
Начну пожалуй.
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');}}
Сначала качаем вот это и распаковываем в папку C:\CapNum\
https://pastebin.mozilla.org/8867297
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)
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
InfSub
Спасибо, проблема исправлена! Кто бы мог подумать что прописанный путь к папке внутри функции решит проблему. Еще раз спасибо!
внутри какой функции прописали путь? код похожий у нас
Отсутствует
внутри какой функции прописали путь
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
ПредположениеНаверное речь идёт о сохранении картинки/капчи.
Посмотри и постарайся вникнуть в последние пару постов, о зоне/области видимости функций, о глобальныx о локальных переменных.
О var-ах в общем.
Дело в том, что ошибка выходит, когда нулевой ответ от Рукапчи приходит и стопорится на строках отвечающих за экстракт и преобразование результата
if(iimGetExtract().search(/\d/)!=-1){ a=iimGetLastExtract().split('|'); c=a[2].replace(/ /g,"<sp>");
Отсутствует
Ну сделай проверку сначала, на пустой или неправильный экстракт.
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
Ну сделай проверку сначала, на пустой или неправильный экстракт.
спасибо за верное направление. буду пытаться реализовать. если верно понимаю через if else проверку можно выполнить
Отсутствует
если верно понимаю через if else проверку можно выполнить
if(iimGetExtract().search(/\d/)!=-1){ a=iimGetLastExtract().split('|'); if(!a[2]){break;}; c=a[2].replace(/ /g,"<sp>");
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Подскажите пожалуйста появилась проблемка по капче вк.
честь кода
frend += 'ONDOWNLOAD FOLDER=C:\\CAPTCH FILE=captcha.jpg WAIT=YES' + "\n"; frend += 'TAG POS=1 TYPE=IMG ATTR=SRC:https://vk.com/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT' + "\n"; frend += 'WAIT SECONDS=3' + "\n";
InfSub
Отсутствует
Отсутствует
Такая гуглокапча кому нибудь попадалась? ))))
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Вот питался составить сккрипт рекапчи без переборов фрейма... но чет до конца не получился.. не работает (((
посмотрите, пожалуйста, что я там накорячил )))
function Recaptha_1(){ var Path='C:\\CapNum\\'; iimPlayCode('TAG POS=1 TYPE=iframe ATTR=src:*google.com/recaptcha/api2/anchor?k=* extract=htm'); //Держи (мгновенный фрей, чтоб не было этих переборов). kffk=iimGetExtract().match(/(name=".*?")/g); iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME '+kffk+'\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation'); if(iimGetExtract().indexOf('checked="true')>0){ iimDisplay('галка стоит - уходим от сюда'); return} else{ iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+kffk+'\nTAG POS=1 TYPE=STRONG ATTR=* EXTRACT=TXT'); //<---Ищем фрейм капчи знаки,улицы,указатели можно вообще пропускать sc=iimGetLastExtract(); while (sc == 'road signs' || sc == 'street signs' || sc == 'street names' || sc == 'pointer'){ iimPlayCode('SET !TIMEOUT_STEP 30\nFRAME F='+kffk+'\nEVENT TYPE=CLICK SELECTOR="#recaptcha-reload-button" BUTTON=0'); continue;} iimPlayCode('ONDOWNLOAD FOLDER='+Path+' FILE=cap.jpg WAIT=YES\nFRAME F='+kffk+'\nTAG POS=1 TYPE=div ATTR=class:"rc-imageselect-payload" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT'); weit(2); resize(); // <--- Уменьшаем картинку weit(5); 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:CHECKBOX FORM=ACTION:getcapcha.php ATTR=NAME:get_id CONTENT=YES'); iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:getcapcha.php ATTR=NAME:numeric CONTENT=1'); iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+keyApi['Rucaptha']); iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Path+'cap2.jpg'); iimPlayCode('SET !TIMEOUT 120\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){ a=iimGetLastExtract().split('|'); c=a[2].match(/\d+/g).sort().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\nFRAME F='+kffk+'\nTAG POS='+c[k]+' TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox'); } iimPlayCode('SET !TIMEOUT 30\nFRAME F='+kffk+'\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'); //<--- Код нажатия кнопки Продолжить, на некоторых сайтах может отличаться iimPlayCode('SET !TIMEOUT 30\nFRAME F='+kffk+'\nEVENT TYPE=CLICK SELECTOR="#recaptcha-verify-button" BUTTON=0'); iimPlayCode('WAIT SECONDS=2'); } iimPlayCode('TAG POS=1 TYPE=iframe ATTR=src:*google.com/recaptcha/api2/anchor?k=* extract=htm'); // <--- отправка рапорта о неправыильной кпче kffk=iimGetExtract().match(/(name=".*?")/g); iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME '+kffk+'\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation'); iimPlayCode('TAB OPEN\nTAB T=2'); iimPlayCode('URL GOTO=rucaptcha.com/res.php?key='+keyApi'+'&action=reportbad&id='+a[1]+''); iimPlayCode('WAIT SECONDS=1\nTAB CLOSE'); } }
InfSub
Отредактировано basikk (03-04-2016 01:08:45)
Отсутствует
wanksta пишетесли верно понимаю через if else проверку можно выполнить
скрытый текстВыделить кодКод:
if(iimGetExtract().search(/\d/)!=-1){ a=iimGetLastExtract().split('|'); if(!a[2]){break;}; c=a[2].replace(/ /g,"<sp>");
спасибо. помогло
Отсутствует
Здравствуйте! Сейчас вот эту простую капчу - ровные цифры, зн. "+" -
Отсутствует
Alekzandr
поиcк (правый верхний угол страницы) по данной теме, по запросу OCR
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
del
Отредактировано PRESIDENT (04-04-2016 17:32:41)
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
Здравствуйте! Сейчас вот эту простую капчу - ровные цифры, зн. "+"
В итоге же надо ввести результат арифметического действия?
Отсутствует
Блин, сообразить не могу. Как сделать?
for (;;){ // ======== кран ======== iimPlayCode('URL GOTO=http://www.какой-то\nWAIT SECONDS=#DOWNLOADCOMPLETE#'); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=CLASS:*acc-nav extract=htm'); if(iimGetExtract().indexOf('login')>0){ iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:Login'); iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:btcaddress CONTENT='+bit); iimPlayCode('TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=NAME:sign'); weit(5);} iimPlayCode('TAG POS=1 TYPE=P ATTR=TXT:*'); weit(3); iimPlayCode('TAB CLOSEALLOTHERS'); prow();if(a>0||a1>0) break; weit(3); recapare(); weit(3); iimPlayCode('TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*'); // ======== следующий кран ======== iimPlayCode('URL GOTO=http://www.еще какой-то/\nWAIT SECONDS=#DOWNLOADCOMPLETE#'); iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=ID:emlogin-btn'); iimPlayCode('TAG POS=1 TYPE=INPUT:EMAIL FORM=ACTION:* ATTR=ID:email CONTENT='+mail); iimPlayCode('TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=NAME:sign'); prow();if(a>0||a1>0) break; weit(3); recapare(); weit(3); iimPlayCode('TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=ID:opener'); weit(3); iimPlayCode('TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=ID:claimsubmit');}
Отсутствует
В итоге же надо ввести результат арифметического действия?
да. по этому - OCR + eval('результата ocr')
Добавлено 03-04-2016 21:19:14
dim222
break; - завершает текущий цикл, если цикл не вложенный, естественно работа скрипта - завершается (при условии, что после цикла нет других операций)
continue; - позволяет перейти на следующий виток цикла
Отредактировано InfSub (03-04-2016 21:19:14)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
break; - завершает текущий цикл, если цикл не вложенный, естественно работа скрипта - завершается (при условии, что после цикла нет других операций)
continue; - позволяет перейти на следующий виток цикла
Спасибо!!!
Отсутствует
break; это выход из цикла for (;; ){
if(a<0 && a1<0){ <--- если условие не сработает, то этот кусок скрипта пропустится weit(3); ... }
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
Alekzandr пишетЗдравствуйте! Сейчас вот эту простую капчу - ровные цифры, зн. "+"
В итоге же надо ввести результат арифметического действия?
Посчитать арифметическое действие надо, да, но это не проблема. Щас грызу-ищу как инвертировать белое на черном в черное на белом.
Отредактировано Alekzandr (04-04-2016 10:36:03)
Отсутствует
Alekzandr
Кинь в личку сайт, посмотрю что сделать можна.
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
Помогите, плиз! объездить жеребца tesseract! Через VietOCR.NET нормально распознает, нет даже необходимости инвертировать картинку в нормальную, "черное на белом", а напрямую,
tesseract.exe c:/captch/image.jpg c:/captch/text.txt -l eng выдает ABHE! И этот тоже, из командной строки пишет ABHE в выходной файл VietOCR.exe c:/captch/image.jpg c:/captch/text.txt -l eng Взял самое простое - картинку сцифрами, черное на белом! Ставил инсталятором, подозреваю, к каким-то библиотекам не хватает путей в системных переменных
Отредактировано Alekzandr (04-04-2016 14:20:20)
Отсутствует
Alekzandr
TAG POS=1 TYPE=SPAN ATTR=id:ra100 EXTRACT=txt TAG POS=1 TYPE=SPAN ATTR=id:ra101 EXTRACT=txt
Отредактировано PRESIDENT (04-04-2016 17:15:44)
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует