Полезная информация

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.
  • Форумы
  •  » iMacros
  •  » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

№108-11-2015 20:38:53

PRESIDENT
Участник
 
Группа: Members
Зарегистрирован: 09-04-2015
Сообщений: 885
UA: Firefox 42.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.



========================================================================


  Обсуждение скриптов и вопросов связанных с борьбой с капчами.


========================================================================




Начну пожалуй. :)


reCaptcha 2 сохранение на компьютер.
Директорию C:\\CapNum\\, куда сохранять и  имя файла/капчи cap.jpg, естественно можете заменить на свои.


Выделить код

Код:

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);



=====================================================
RECAPTCHA
=====================================================

скрипт рекапчи, с уменьшением размера картинки и отправлением на рукапчу для распознания
https://pastebin.mozilla.org/8868144

Выделить код

Код:

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');}}



=====================================================
SOLVEMEDIA
=====================================================

Пытаемся взломать или ищем флеш капчу.
Солвемедия ломается без проблем, если у вас динамический IP.
После каждого распознавания капчи, нужно менять IP, чистить куки и желательно подменять узер агент, т.е. версию операционки и браузера.

Сначала качаем вот это и распаковываем в папку  C:\CapNum\


Обратите внимание, я в скрипте ввёл свои сокращения (мне так удобнее) t0 t3
И если будете копировать только кусок скрипта то и шапку копируйте.

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);}


to be continued...:)

Отредактировано PRESIDENT (19-04-2016 18:30:59)


Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.

Отсутствует

 

№30212-02-2016 12:26:32

Romstar08
Участник
 
Группа: Members
Зарегистрирован: 02-02-2016
Сообщений: 38
UA: Palemoon 25.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Skrini4
Возможно, как ты говоришь не этично, но мне помогает...

скрытый текст

Выделить код

Код:

....
SET !ERRORIGNORE YES
FRAME F=17
TAG POS=1 TYPE=DIV ATTR=CLASS:recaptcha-checkbox-checkmark&&ROLE:presentation&&TXT:
CLEAR
FRAME F=18
TAG POS=1 TYPE=DIV ATTR=CLASS:recaptcha-checkbox-checkmark&&ROLE:presentation&&TXT:
CLEAR
FRAME F=19
TAG POS=1 TYPE=DIV ATTR=CLASS:recaptcha-checkbox-checkmark&&ROLE:presentation&&TXT:
CLEAR
FRAME F=20
TAG POS=1 TYPE=DIV ATTR=CLASS:recaptcha-checkbox-checkmark&&ROLE:presentation&&TXT:
CLEAR
....


Нужный фрем ловиться;)

Отредактировано InfSub (12-02-2016 12:58:56)

Отсутствует

 

№30312-02-2016 13:54:16

Dolph
Участник
 
Группа: Members
Зарегистрирован: 25-12-2014
Сообщений: 2
UA: Firefox 44.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

удалено, 2.16

InfSub

Отсутствует

 

№30412-02-2016 21:15:50

Skrini4
Участник
 
Группа: Members
Зарегистрирован: 12-02-2016
Сообщений: 2
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Romstar08 пишет

Skrini4
Возможно, как ты говоришь не этично, но мне помогает...

скрытый текст

Выделить код

Код:

....
SET !ERRORIGNORE YES
FRAME F=17
TAG POS=1 TYPE=DIV ATTR=CLASS:recaptcha-checkbox-checkmark&&ROLE:presentation&&TXT:
CLEAR
FRAME F=18
TAG POS=1 TYPE=DIV ATTR=CLASS:recaptcha-checkbox-checkmark&&ROLE:presentation&&TXT:
CLEAR
FRAME F=19
TAG POS=1 TYPE=DIV ATTR=CLASS:recaptcha-checkbox-checkmark&&ROLE:presentation&&TXT:
CLEAR
FRAME F=20
TAG POS=1 TYPE=DIV ATTR=CLASS:recaptcha-checkbox-checkmark&&ROLE:presentation&&TXT:
CLEAR
....


Нужный фрем ловиться;)

Эммм... а с командой clear точно не опечатался? Она же очищает временный файлы и как следствие logout, и проверки следующего фрейма не происходит... Не на теории пишу... Проверил

Отсутствует

 

№30513-02-2016 15:36:12

Eltar
Участник
 
Группа: Members
Зарегистрирован: 13-02-2016
Сообщений: 93
UA: Firefox 44.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

udalov
удалено, 2.9
С сохранение тут все просто.
Правила форума iMacros, 1.3.2

скрытый текст

Выделить код

Код:

var k=100;
for (w=0; w<k; w++) {
for (i=0; i<31; i++) {
f = iimPlayCode('SET !TIMEOUT_STEP 0\nONDOWNLOAD FOLDER=D:\\iMacros\\Datasources\\SolveMedia FILE=capcha_{{!NOW:dd.mm.yyyy<SP>-<SP>hh.nn.ss}}.jpg WAIT=YES\nFRAME F='+i+'\nTAG POS=1 TYPE=CANVAS ATTR=WIDTH:300&&HEIGHT:150&&ID:slog CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');
if (f>0) {break;}
}
if (f<0) {k=k+1;}
iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=IMG ATTR=ALT:New<SP>Puzzle&&SRC://api.solvemedia.com/media/reload-whV2.gif\nWAIT SECONDS=3')
}


А вот как ты собираешься эту капчу распознать без Рукапчи или 9kw?

InfSub

Отсутствует

 

№30613-02-2016 17:10:29

Koks
Участник
 
Группа: Members
Зарегистрирован: 02-10-2015
Сообщений: 151
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

PRESIDENT

Извлекай вот это значение и по нему сравнивай, 33 или 44

Спасибо за помощь все разобрался
а как добавить третье условие?

скрытый текст

Выделить код

Код:

if(a[2]==2){resize1();}
    else{resize();}
        resize2();???

if(a[2]==2){resize1();}
if(a[2]==4){resize2();}
if(a[2]==3){resize();}


Спасибо

Отредактировано Koks (13-02-2016 17:17:10)

Отсутствует

 

№30714-02-2016 02:33:36

dvitkovs
Участник
 
Группа: Members
Зарегистрирован: 08-11-2015
Сообщений: 266
UA: Palemoon 25.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

falker777 пишет

Всем привет, по капче солве - поможет ли кому нибудь способ по которому будет всегда выходить видеокапчи?

Да, конечно поможет способ, по которому  по солвемедии всегда будет выходить видеокапча. Многим, тут на форуме поможет. Выкладывай, что у тебя за способ?
Можно и личным сообщением.  :)

Отсутствует

 

№30814-02-2016 03:43:22

PRESIDENT
Участник
 
Группа: Members
Зарегистрирован: 09-04-2015
Сообщений: 885
UA: Firefox 44.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

dvitkovs пишет

что у тебя за способ

Всегда новый ип и мобильный узерагент.:)

Добавлено 14-02-2016 04:06:48

melena083 пишет

можете тоже свесто него использовать значение weit

smile_163.gif Не путай с сет тайм оутом

Отредактировано PRESIDENT (14-02-2016 04:06:48)


Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.

Отсутствует

 

№30914-02-2016 10:28:38

sabio
Участник
 
Группа: Members
Зарегистрирован: 20-01-2016
Сообщений: 11
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

PRESIDENT пишет

Всегда новый ип и мобильный узерагент.:)

ИП прокси подойдет? (если брать из списка)... можно в личку юзерагент каким пользуетесь? Перебрал из этого списка штук 20 но закономерного появления нужной капчи не обнаружил... только случайность.

Отсутствует

 

№31014-02-2016 13:01:46

dvitkovs
Участник
 
Группа: Members
Зарегистрирован: 08-11-2015
Сообщений: 266
UA: Palemoon 25.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

PRESIDENT пишет

Всегда новый ип и мобильный узерагент.:)

Для флеш-солвемедия капчи всегда новый IP??? Та она и на старом, на одном и том же  несколько раз выпадает, до 10 раз может. И даже на юзерагенте не мобильного  браузера, а обычного.
Ну а если всегда новый IP использовать (только "правильный", без проксей) с подменой узерагента, то таким способом и флеш-солвемедия-капча не нужна. Гораздо проще в таком случае извлекать нужный слог из кода страницы и вставлять в поле ответа. :)
Поэтому для флеш-солвемедии не нужен всегда новый IP. Он конечно же нужен, но через несколько раз.
А вообще-то я думал, что falker777 знает какой-то иной, секретный способ, чтоб флеш-солвемедия капча всегда появлялась.
Например, без замены IP.

Отредактировано dvitkovs (14-02-2016 13:40:07)

Отсутствует

 

№31114-02-2016 13:42:12

Koks
Участник
 
Группа: Members
Зарегистрирован: 02-10-2015
Сообщений: 151
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

dvitkovs
он мне в личку написал IP Канады

Отсутствует

 

№31214-02-2016 14:00:29

dvitkovs
Участник
 
Группа: Members
Зарегистрирован: 08-11-2015
Сообщений: 266
UA: Palemoon 25.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Koks пишет

он мне в личку написал IP Канады

любой IP Канады подойдёт  или есть какой-то определённый, какой-то специальный?

Отредактировано dvitkovs (14-02-2016 14:14:09)

Отсутствует

 

№31314-02-2016 17:59:36

Koks
Участник
 
Группа: Members
Зарегистрирован: 02-10-2015
Сообщений: 151
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

dvitkovs
Я не знаю
я сам cижу Firefox Portable 27 никогда не меняю айпи user-agent у меня постоянно флеш-солвемедия

Отсутствует

 

№31415-02-2016 16:31:13

Koks
Участник
 
Группа: Members
Зарегистрирован: 02-10-2015
Сообщений: 151
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

уже третий день бьюсь над этой проблемой
если такая капча

извлекаю так

скрытый текст

Выделить код

Код:

a=iimGetLastExtract().split('Please Enter ');


если такая капча

извлекаю так

скрытый текст

Выделить код

Код:

a=iimGetLastExtract().split(': ');


можно сделать универсальное извлечение
постоянно приходят разные капчи
в некоторых есть спереди слово Answer

все спасибо Вроде нашел решение

скрытый текст

Выделить код

Код:

a=iimGetLastExtract().split(': ');
        if (a !== '#EANF#'){
        a=iimGetLastExtract().split('Please Enter ');}
        s=a[1].replace(/ /g,"<sp>");
        iimDisplay(s);

Отредактировано Koks (15-02-2016 17:37:27)

Отсутствует

 

№31515-02-2016 17:17:15

dvitkovs
Участник
 
Группа: Members
Зарегистрирован: 08-11-2015
Сообщений: 266
UA: Palemoon 25.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Koks пишет

уже третий день бьюсь над этой проблемой
если такая капча

извлекаю так

скрытый текст

Выделить код

Код:

a=iimGetLastExtract().split('Please Enter ');


если такая капча

извлекаю так

скрытый текст

Выделить код

Код:

a=iimGetLastExtract().split(': ');


можно сделать универсальное извлечение
постоянно приходят разные капчи
в некоторых есть спереди слово Answer
ПОМОГИТЕ

а если такая? как извлекаешь?

скрытый текст
Screenshot-546.1455466168.png

Отсутствует

 

№31615-02-2016 17:31:05

Koks
Участник
 
Группа: Members
Зарегистрирован: 02-10-2015
Сообщений: 151
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

dvitkovs

скрытый текст

Выделить код

Код:

for(k=0; k<60; k++){   //<---Ищем фрейм NO
if(iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+k+'\nTAG POS=1 TYPE=DIV ATTR=ID:playTxt')>0){
iimPlayCode('WAIT SECONDS=15\nONDOWNLOAD FOLDER='+Path+' FILE=captcha.jpg WAIT=YES\nFRAME F='+k+'\nTAG POS=1 TYPE=DIV ATTR=ID:overlay CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');
iimPlayCode('TAG POS=1 TYPE=A ATTR=ID:adcopy-page-return'); break;}}

Отсутствует

 

№31715-02-2016 18:08:06

PRESIDENT
Участник
 
Группа: Members
Зарегистрирован: 09-04-2015
Сообщений: 885
UA: Firefox 44.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

dvitkovs
Так сначала кнопку Плей нажми, потом уже капча появится, вот её и загружай на комп и распознавай.
В первом посте смотри, там есть готовое решение.


Koks
В первом посте выложил пхп скрипт который обрабатывает капчу уберает лишние буквы


Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.

Отсутствует

 

№31815-02-2016 19:11:26

Koks
Участник
 
Группа: Members
Зарегистрирован: 02-10-2015
Сообщений: 151
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

PRESIDENT

Мне кажется вы там кавычку где-то не добавили
Я про скрипт SOLVEMEDIA

скрытый текст

Выделить код

Код:

SyntaxError: syntax error, line NaN (Error code: -991)


вроде вижу кавычки не хватает Но куда ее ставить понятия не имею

Отредактировано Koks (15-02-2016 19:13:04)

Отсутствует

 

№31915-02-2016 19:19:47

PRESIDENT
Участник
 
Группа: Members
Зарегистрирован: 09-04-2015
Сообщений: 885
UA: Firefox 44.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Koks
Да точно не хватает закрывающейся скобки в конце функции function solvemedia()

скрытый текст
/***-= Solvemedia =-***/
function solvemedia(){
...
return w;}

}


Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.

Отсутствует

 

№32015-02-2016 20:10:51

Koks
Участник
 
Группа: Members
Зарегистрирован: 02-10-2015
Сообщений: 151
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

PRESIDENT
Скрипт solve.php который должен лежать в директории C:\CapNum\solve

скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces, Path='C:\\CapNum\\'; 
 function cap(){
   var args=[Path+'solve.php'];
       file.initWithPath(Path+'PHP\\PHP.exe');
       proc.init(file); proc.run(false, args, args.length);}


пути не сходятся где все таки должен лежать PHP файл?

Отредактировано Koks (15-02-2016 20:11:48)

Отсутствует

 

№32115-02-2016 20:23:39

PRESIDENT
Участник
 
Группа: Members
Зарегистрирован: 09-04-2015
Сообщений: 885
UA: Firefox 44.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Koks
/***-= Обработка капчи =-***/
function cap(){
   var args=[Path+'

solve\\

solve.php'];
       file.initWithPath(Path+'PHP\\PHP.exe');
       proc.init(file); proc.run(false, args, args.length);}


Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.

Отсутствует

 

№32216-02-2016 00:27:28

Egorushka1974
Участник
 
Группа: Members
Зарегистрирован: 07-05-2015
Сообщений: 180
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

скрытый текст

Выделить код

Код:

var Path='C:\\CapNum\\';


Это по солвмедиа.
А еще не хватает такой переменной с путем Path, и ругается на неопределенную
w, может я и не прав.
И у меня скрипт обновляет один раз и останавливается, буду разбираться,
может, что сам не так делаю.

Отсутствует

 

№32316-02-2016 00:34:11

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3319
UA: Firefox 44.0
Веб-сайт

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Egorushka1974

а это, простите, что?:

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces, Path='C:\\CapNum\\';


Добавлено 16-02-2016 00:38:07

Egorushka1974 пишет

и ругается на неопределенную w

думаю - должно быть так:

Выделить код

Код:

var w=solvemedia();

хотя, переменная w глобальная и должна корректно быть видна после функции solvemedia();, даже без return w; и соответственно, без w=solvemedia();

Отредактировано InfSub (16-02-2016 00:41:34)


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox


на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№32416-02-2016 03:15:55

PRESIDENT
Участник
 
Группа: Members
Зарегистрирован: 09-04-2015
Сообщений: 885
UA: Firefox 44.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Я показал просто возможный вариант скрипта. У меня естественно всё это совсем по другому.
Этот скрипт сильно упрощённая версия. Вы его переделывайте под себя кому как надо.
Смысл был выловить или капчу с тегами TYPE=SPAN ATTR=ID:slog
с которой можно и так данные сдернуть, без распознавания, или искать флешь капчу.
В скрипте показана команда нажатия кнопки плей , всегда считалось имакросом не реализуемо.
И главное, пхп скрипт, для обработки капчи, инвертации цветов и удаления лишнего.

Один из вариантов скрипта

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces,a,b,c,d,e,f=0,refka='1AWqZ3ke9z8eSvZWFPeHTY8a3jmQNWKhSa';
 var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
 var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); 
 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\\'; 
  
 var bit='Биткоин кошель';
 
 //for(;;){  
   del_cookis(); 
   
     iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS\n'+t3+'URL 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(){
   for(q=0; q<5; 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) reload();
else if(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++){     
      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();w=99;}
else if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:*')>0){  
      if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:*slog')>0){  
         iimPlayCode('ONDOWNLOAD FOLDER='+Path+'solve\\ FILE=a.jpg WAIT=YES\nFRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:*slog CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT'); w=99;}
else if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=CANVAS ATTR=ID:*playIcn')>0){ weit(10);
      if(iimPlayCode(t0+'FRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=ID:overlay&&TXT:')>0){ weit(1);
         iimPlayCode('ONDOWNLOAD FOLDER='+Path+'solve\\ FILE=a.jpg WAIT=YES\nFRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=ID:overlay&&TXT: CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT'); w=99;}}                                           
      if(w==99){ 
         iimPlayCode('TAB OPEN\nTAB T=2'); iimDisplay('OCR'); cap();
         iimPlayCode('URL GOTO="'+kap+'"');  weit(3);
         iimPlayCode(t3+'URL GOTO=newocr.com');
      if(iimPlayCode(t0+'TAG POS=1 TYPE=H3 ATTR=TXT:About')>0){
         iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:FILE FORM=ID:form ATTR=ID:userfile CONTENT='+Path+'solve\\b.jpg');
         iimPlayCode(t3+'TAG POS=1 TYPE=BUTTON FORM=ID:form ATTR=ID:preview'); // weit(1);
         iimPlayCode(t0+'TAG POS=1 TYPE=A ATTR=CLASS:search-choice-close&&DATA-OPTION-ARRAY-INDEX:78');
         iimPlayCode(t3+'TAG POS=1 TYPE=BUTTON FORM=ID:form-ocr ATTR=ID:ocr'); // weit(1);
         iimPlayCode(t0+'TAG POS=1 TYPE=textarea ATTR=id:ocr-result extract=txt');  txt=iimGetExtract();
         txt=txt.replace(/http\:\/\/www\.newocr\.com\//gi,"");}         
         iimPlayCode('TAB CLOSE');}}}}}    
         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;}}
//else if(iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=CLASS:alert*alert*&&TXT:Wrong*captcha*')>0) reload(); 
//else if(iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:Invalid*captcha*')>0) reload(); 

   /***-= Обновление капчи =-***/
function reload(){ del_cookis(); 
     iimPlayCode(t3+'TAG POS=1 TYPE=IMG ATTR=SRC:*solvemedia.com/media/reload*.gif'); weit(1);}

    /***-= Обработка капчи =-***/
function cap(){
   var args=[Path+'solve\\solve.php'];
       file.initWithPath(Path+'PHP\\PHP.exe');
       proc.init(file); proc.run(false, args, args.length);} 
       
          /***-= Удаляем куки =-***/
 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 weit(s){iimPlayCode('WAIT SECONDS='+s);}

Отредактировано PRESIDENT (16-02-2016 08:41:47)


Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.

Отсутствует

 

№32516-02-2016 07:59:02

Egorushka1974
Участник
 
Группа: Members
Зарегистрирован: 07-05-2015
Сообщений: 180
UA: Chrome 48.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

InfSub пишет

хотя, переменная w глобальная и должна корректно быть видна

По первому пункту признаю, наверное невнимательно посмотрел, уже ночь была.
А по второму пункту

InfSub пишет

хотя, переменная w глобальная и должна корректно быть видна после функции solvemedia();, даже без return w; и соответственно, без w=solvemedia();

как это соотносится с этим

скрытый текст

Выделить код

Код:

for(w=0; w<=60; w++){


это из первого поста для  Солвемедиа капчи, разве одна переменная может использоваться в двух местах, и такого я не увидел нигде в коде
скрытый текст

Выделить код

Код:

w=solvemedia();


когда я в шапке скрипта прописал
скрытый текст

скрипт перестал ругаться.

Отсутствует

 

№32616-02-2016 08:36:07

PRESIDENT
Участник
 
Группа: Members
Зарегистрирован: 09-04-2015
Сообщений: 885
UA: Firefox 44.0

Re: iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Egorushka1974 пишет

как это соотносится с этим
for(w=0; w<=60; w++){

скрытый текст
Это if(

w==99

){ нужно было соотнести с этим
...SAVE_ELEMENT_SCREENSHOT');

w=99;

}

Более понятный и подробный кусок смотри постом выше.
Опять же кто тупо копирует не вникая, обратите внимание, на комп сохраняется капча а.jpg, но на онлайн сервис OCR подаётся b.jpg

Как раз solve.php и должен обрабатывать капчу.
И он годится только для обработки флешь черно белой капчи.
И опять же там я дал только кусочек кода упрощённую версию
способы обработки капчи каждый может сделать/придумать под себя.


Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.

Отсутствует

 
  • Форумы
  •  » iMacros
  •  » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media.

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]