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

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.
  • Форумы
  •  » 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
В личку только с серьёзными предложениями по заказу скриптов/программ.

Отсутствует

 

№45211-03-2016 17:19:20

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

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

Koks пишет

Eltar

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

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
        if(iimGetExtract().indexOf('checked="true')<0){
                            iimPlayCode('TAB OPEN\nTAB T=2');
                            iimPlayCode('URL GOTO=rucaptcha.com/res.php?key='+api+'&action=reportbad&id='+a[1]+'');
                            iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');}

Спасибо...
Если я правильно понимаю логику (не судите строго, я любитель), сначала парсим какую-то нажатую картинку-чекбокс как веб-страницу, затем в  EXTRACT'е определяем, стоит ли в этом чекбоксе галочка. Если стоит, отправляем репорт на  Рекапчу. Верно?

Отсутствует

 

№45311-03-2016 17:52:22

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

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

Eltar
Если галочка после нажатия кнопки подтвердить не появилась, отправляем репорт на  Рекапчу.

Отредактировано Koks (11-03-2016 17:58:00)

Отсутствует

 

№45411-03-2016 18:22:12

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

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

Koks пишет

Eltar
Если галочка после нажатия кнопки подтвердить не появилась, отправляем репорт на  Рекапчу.

Код

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

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+30+'\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM
alert(iimGetLastExtract());


на выходе дал"#EANF#"

Воспользовался кодом:

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

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+30+'\nTAG POS=1 TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox EXTRACT=HTM');
alert(iimGetLastExtract());


в Экстракте на выходе
скрытый текст

Выделить код

Код:

<div style=""outline: 1px solid blue;"" class=""rc-imageselect-checkbox""></div>


checked="true я тут не заметил. Что я делаю не так?

код публикуется в тегах code внутри спойлера!

InfSub

Отсутствует

 

№45511-03-2016 19:37:43

raileb
Участник
 
Группа: Members
Зарегистрирован: 18-02-2016
Сообщений: 3
UA: Chrome 47.0

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

удалено - избыточное цитирование, правило 2.9
так же, рекомендую прочесть это

InfSub

не помогло

gepavlik пишет

raileb сделай братишка так как нас учат спецы InfSub и PRESIDENT


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

Выделить код

Код:

var btc='1J21YaPF6BzHn8CWiEw82rA8Yq4UfoAj3P';
function btc(){
 iimPlayCode('TAG POS=2 TYPE=INPUT:TEXT FORM=ID:form ATTR=ID:* CONTENT='+btc);
   iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=ID:form ATTR=ID:* CONTENT='+btc);}


и вставляй адрес btc когда надо используя команду btc();

Отсутствует

 

№45611-03-2016 22:06:47

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

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

Eltar пишет

\nFRAME F='+30+'\n

Если ты фрейм сам прописываешь то не нужно его за кавычки выносить.
... FRAME F=

30

\n ...


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

Отсутствует

 

№45711-03-2016 23:54:16

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

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

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

Отсутствует

 

№45812-03-2016 00:10:25

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

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

PRESIDENT пишет

Если ты фрейм сам прописываешь то не нужно его за кавычки выносить.
... FRAME F=

30

\n ...

это ни как не влияет на действие кода, конкатенация строки, состоящей из текста и числа - не вызовет ошибки, если число не в кавычках


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


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

Отсутствует

 

№45912-03-2016 00:22:14

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

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

Koks, спасибо! Кажется, разобрался.

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

Выделить код

Код:

f=iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=CLASS:rc-imageselect-error-select-more EXTRACT=HTM');
        alert(iimGetExtract());
        if(iimGetExtract().indexOf('style="display: none')>0){alert("Надпись не видна");}else{alert("Ошибка в капче");}

//надпись не видна - в EXTRACT'e:
//<div class="rc-imageselect-error-select-more" style="display: none; outline: 1px solid blue;">Please select all matching images.</div>

//Надпись видна - в EXTRACT'e:
//<div class="rc-imageselect-error-select-more" style="outline: 1px solid blue;">Please select all matching images.</div>

Ищем часть кода style="display: none. Если нашли, надпись не видна, если не нашли, надпись отображается. Круто. Спасибо, ребятки, вы лучшие! :)


Добавлено 12-03-2016 00:34:18
Ребята, а кто знает, мне один человек говорил, что чтобы сохранить и работать с капчей Recaptcha v.2 не обязательно перебирать фреймы. Как думаете, он правду говорит, или вводит в заблуждение людей не разумеющих?
В принципе ведь достаточно в первый раз перебрать фреймы чтобы найти капчу, записать фрейм и потому уже работать с капчой с уже известным фреймом. Или есть еще какой-то способ?


А еще интересно, подскажите, что делает функция canvas(); и flesh();? На понятийном уровне?

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

Выделить код

Код:

/***-= Обрабатываем флеш капчу =-***/  
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');}

Отредактировано Eltar (12-03-2016 00:40:08)

Отсутствует

 

№46012-03-2016 00:50:52

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

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

Eltar пишет

подскажите, что делает функция canvas(); и flesh()

Эти функции запускают пхп скрипт,  для обработки капчи, и запуска распознавалки tesseracт

скрытый текст
ошибка
file.initWithPath("C:\\Windows\\System32\\wscriimPlayCodet.exe");
file.initWithPath("C:\\Windows\\System32\\

wscript.exe

");

Отредактировано PRESIDENT (12-03-2016 02:03:08)


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

Отсутствует

 

№46112-03-2016 00:57:01

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

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

PRESIDENT

ага, а можно более подробно? Что делает .php, как установить себе на комп tessaract? Имеется в виду Tesseract OCR? По этому адресу: https://sourceforge.net/projects/tesseract-ocr/ ?
Вообще что нужно дополнительно себе установить чтобы эти функции сработали?

У меня, к примеру, нет файла C:\\Windows\\System32\\wscripet.exe

Архив solve я в папку C:\CapNum положил.

Отредактировано Eltar (12-03-2016 01:08:58)

Отсутствует

 

№46212-03-2016 02:09:03

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

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

Eltar

скрытый текст
Посмотри ещё раз первый пост, там где ты скрипт брал.
Там кроме скрипта есть ещё одна важная строка

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

обрати на неё пожалуйста внимание.


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

Отсутствует

 

№46312-03-2016 10:05:57

Док
Участник
 
Группа: Members
Зарегистрирован: 26-02-2014
Сообщений: 27
UA: Firefox 43.0

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

Eltar пишет

чтобы сохранить и работать с капчей Recaptcha v.2 не обязательно перебирать фреймы

Это возможно реализовать при использовании javascript. Например так

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

Выделить код

Код:

var n = '\n';
var grecaptcha = window.document.getElementsByClassName('g-recaptcha')[0];
var frame0 = grecaptcha.childNodes[0].childNodes[0].childNodes[0];
frame0.id = 'rc0';
frame0.name = 'rc0';//Певый фрейм где надо поставить галочку
var frame1 = window.document.getElementsByTagName('div')[window.document.getElementsByTagName('div').length - 1].childNodes[0];
frame1.id = 'rc1';
frame1.name = 'rc1';//Второй фрейм с картинкой
//Дальше в коде использовать не перебор, а обращение к имени фрейма. В примере ниже как раз нажатие для установки галки
var code =  'FRAME NAME="rc0"' + n;
code += 'TAG POS=1 TYPE=DIV ATTR=ROLE:presentation' + n;
code += 'WAIT SECONDS=3';
iimPlayCode(code);

Отредактировано Док (12-03-2016 14:32:37)

Отсутствует

 

№46412-03-2016 10:30:30

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

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

PRESIDENT

Eltar пишет

Архив solve я в папку C:\CapNum положил.

Попробовал запустить скрипт на Solvemedia из первого поста, но наткнулся на ошибку:

[Exception... "Component returned failure code: 0x80570018 (NS_ERROR_XPC_BAD_IID) [nsIJSCID.getService]"  nsresult: "0x80570018 (NS_ERROR_XPC_BAD_IID)"  location: "JS frame :: chrome://imacros/content/jsplayer.js :: <TOP_LEVEL> :: line 174"  data: no], line 3 (Error code: -991)

Что за ерунда такая и как с ней быть?
Пробовал на разных версиях Лисы.

Отредактировано Eltar (12-03-2016 10:31:33)

Отсутствует

 

№46512-03-2016 11:36:25

dim222
Участник
 
Группа: Members
Зарегистрирован: 06-03-2016
Сообщений: 423
UA: Chrome 48.0

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

please! что не так? На сервис отправляется [ OK_REPORT_RECORDED ]. Хотя все определяется верно. И еще,как прописать,если на выходе разное кол-во сатош (обычно 222 или 333 или 888)?
THANK YOU!!!!:usch:

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

Выделить код

Код:

//Проверяем правильность ввода капчи
iimPlayCode('SET !TIMEOUT_STEP 0\nTAB T=1\nTAG POS=1 TYPE=STRONG ATTR=TXT:222<SP>satoshi<SP>was<SP>sent<SP>to<SP>your<SP>Paytoshi<SP>a* EXTRACT=TXT');
var r=iimGetExtract()
iimPlayCode('WAIT SECONDS=2');
if(r.indexOf("You")==0) { 
   iimPlayCode('FILEDELETE NAME='+Path+'image.jpg');}
    else {iimPlayCode('WAIT SECONDS=2\nTAB OPEN\nTAB T=2');
iimPlayCode('SET !TIMEOUT 30\nURL GOTO=http://rucaptcha.com/res.php?key=' +key+ '&action=reportbad&id=' +s[1]);
iimPlayCode('WAIT SECONDS=1\nTAB CLOSE'); }}

Отсутствует

 

№46612-03-2016 11:52:17

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

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

Eltar
ошибки в коде

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

Выделить код

Код:

(Ci.nsiimPlayCoderomptService);
(Ci.nsiimPlayCoderefBranch);
(Ci.nsiimPlayCoderocess);


Измени
скрытый текст

Выделить код

Код:

(Ci.nsIPromptService);
(Ci.nsIPrefBranch);
(Ci.nsIProcess);


dim222
*
скрытый текст

Выделить код

Код:

if(iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=CLASS:alert*alert-danger*&&TXT:Invalid*captcha*entered!*')>0){
         iimPlayCode('TAB OPEN\nTAB T=2');
         iimPlayCode(t3+'URL GOTO=rucaptcha.com/res.php?key='+api+'&action=reportbad&id='+s[1]+'');
         iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');}


или так
скрытый текст

Выделить код

Код:

if(iimPlayCode(t0+'TAG POS=1 TYPE=STRONG ATTR=TXT:*satoshi*was*sent*')<0){
         iimPlayCode('TAB OPEN\nTAB T=2');
         iimPlayCode(t3+'URL GOTO=rucaptcha.com/res.php?key='+api+'&action=reportbad&id='+s[1]+'');
         iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');}


экстрактов не надо удалить все

Отредактировано Koks (12-03-2016 12:20:39)

Отсутствует

 

№46712-03-2016 12:01:50

dim222
Участник
 
Группа: Members
Зарегистрирован: 06-03-2016
Сообщений: 423
UA: Chrome 48.0

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

Eltar пишет

Попробовал запустить скрипт на Solvemedia из первого поста, но наткнулся на ошибку

ПОМЕНЯЙ :

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

Выделить код

Код:

var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsiimPlayCoderefBranch);
на  
var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);

и 
 var alt=Cc["@mozilla.org/embedcomp/prompt-service;1"].getService(Ci.nsiimPlayCoderomptService);
на
 var alt=Cc["@mozilla.org/embedcomp/prompt-service;1"].getService(Ci.nsIPromptService);

и еще
file.initWithPath("C:\\Windows\\System32\\wscriimPlayCodet.exe"); 
на
file.initWithPath("C:\\Windows\\System32\\wscript.exe");

Отсутствует

 

№46812-03-2016 14:32:54

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

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

dim222, Koks
Спасибо! Вроде работает. Не все, правда, но то несущественно.

Отсутствует

 

№46912-03-2016 18:23:17

dim222
Участник
 
Группа: Members
Зарегистрирован: 06-03-2016
Сообщений: 423
UA: Chrome 48.0

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

Koks Спасибо!!! 2-й вариант помог:)


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

Выделить код

Код:

if(iimPlayCode(t0+'TAG POS=1 TYPE=STRONG ATTR=TXT:*satoshi*was*sent*')<0){
         iimPlayCode('TAB OPEN\nTAB T=2');
         iimPlayCode(t3+'URL GOTO=rucaptcha.com/res.php?key='+api+'&action=reportbad&id='+s[1]+'');
         iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');}

Отредактировано dim222 (12-03-2016 18:26:53)

Отсутствует

 

№47012-03-2016 21:11:08

Vladimir271
Участник
 
Группа: Members
Зарегистрирован: 20-02-2016
Сообщений: 10
UA: Firefox 45.0

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

Обьясните пожалуйста строчку

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

Выделить код

Код:

e=iimPlayCode(t0+'TAG POS=1 TYPE=* ATTR=TXT:*ou*wait*');


*ou*wait* что это такое?

Отсутствует

 

№47112-03-2016 22:14:35

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

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

Vladimir271
это значит, что в искомой строке, обязательно, должны быть, эти два фрагмента текста


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


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

Отсутствует

 

№47212-03-2016 22:26:27

Vladimir271
Участник
 
Группа: Members
Зарегистрирован: 20-02-2016
Сообщений: 10
UA: Firefox 45.0

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

А что за текст там должен быть что он сравнивает с 0?
Что то не понятно и у меня ошибка в этом выходит?

InfSub пишет

Vladimir271
это значит, что в искомой строке, обязательно, должны быть, эти два фрагмента текста

Отсутствует

 

№47313-03-2016 01:43:49

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

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

Vladimir271
Это проверка на таймер.
На всех кранах эта надпись по разному.
Что то типа этого
You have to wait 5 minutes


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

Отсутствует

 

№47413-03-2016 20:37:58

bestiya
Участник
 
Группа: Members
Зарегистрирован: 13-03-2016
Сообщений: 5
UA: Chrome 48.0

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

Подскажите, пробую запустить скрипт из первого поста, выдает такую ошибку

скрытый текст
SyntaxError: expected expression, got '...', line NaN (Error code: -991)

Отсутствует

 

№47513-03-2016 21:15:53

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

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

Надеюсь ты скрипт как *.js запускаешь не *.iim


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

Отсутствует

 

№47613-03-2016 21:18:56

bestiya
Участник
 
Группа: Members
Зарегистрирован: 13-03-2016
Сообщений: 5
UA: Chrome 48.0

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

конечно, и не иначе
Уточнение - скрипт на Solvemedia

Отредактировано bestiya (13-03-2016 21:20:20)

Отсутствует

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

Board footer

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