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

Вы можете получить техническую поддержку и просто поболтать в jabber-конференциях Mozilla Россия: support@conference.mozilla-russia.org — для решения проблем с программами Mozilla, talks@conference.mozilla-russia.org — для общения на свободные темы.

iMacros » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media. » 25-11-2018 12:18:21

InfSub пишет:

про цикл вида:

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

Выделить код

Код:

for(i=1; i<=99999; i++){


я вообще молчу, ибо тут можно только взгрустнуть, уронить скупую мужскую слезу и отправить автора данного цикла читать основы js

Вот с этого места поподробней, пожалуйста! Что тут не так, в этом образце простого классического цикла? Или может за последние 100 лет уже изобрели более современные виды циклического исполнения скриптов, которые радикально отличаются от приведённого выше?
Может просветите? ;)

iMacros » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media. » 25-11-2018 11:25:17

InfSub пишет:

объясните роль 4й строки?

там же до этой строчки стоят команды  break; и else
break значит остановиться, когда найден искомый элемент. А else значит "иначе", то есть что делать скрипту в случае если искомое не найдено. То есть повторять то, что же действие, что и в первой строке (из 4-х вами упомянутых), если элемент не найден.

25-11-2018 11:28:31
и кстати, секундная задержка там не для того, чтоб элементы страницы успели нормально загрузиться, а это время выдержки перед новым исполнением 4-й строки. То есть чтоб цикл поиска искомого "чекеда" был с периодичностью в 1 секунду.

25-11-2018 11:32:41
короче говоря я уже разобрался, что 4-я строчка тут и нафик не нужна. И команда else  тоже. Уже убрал из скрипта. :)

iMacros » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media. » 25-11-2018 03:34:14

InfSub пишет:

у автора FRAME NAME=undefined
у вас FRAME NAME="*"
я не готов сказать, как именно в вашем случае ищется фрейм, хотя на сколько помню, раньше он по * не находился и вообще выдавал ошибку на такой способ поиска (могу ошибаться конечно)

конечно ошибаетесь! Я пробовал FRAME NAME=undefined и он уже давно не работает (3 года ж уже прошло с той поры). А вот если вместо нерабочего undefined прописать "*", то всё работает (пашет, фурычит, фунциклирует). Можете сами удостовериться при желании :)

InfSub пишет:

но вопрос даже не в этом, а в том, что же вы пытаетесь добиться конструкцией:

как что? неужели непонятно? ну вы блин даёте!!! Я ж объяснял уже: этот скрипт ПРЕЗИДЕНТА я использую лишь отчасти, и не весь скрипт и не для автоматического распознавания с помощью сервисов типа Рукапчи. Просто не желаю я посылать капчу на сервис Рукапча. Нажимать на картинки я могу и сам вручную. Мой скрипт работает на полуавтомате, то есть когда вылазит гуглокапча, т

iMacros » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media. » 25-11-2018 00:42:53

Короче говоря, не придумал ничего более умного чем зделать вот такую штуку:

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

Выделить код

Код:

for(i=1; i<=99999; i++){

   iimPlayCode('FRAME NAME="*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
  if(iimGetExtract().indexOf('checked="true')>0)  break; else     
   iimPlayCode('WAIT SECONDS=1');
   iimPlayCode('FRAME NAME="*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');}


Здесь каждую секунду извлекается экстракт текста и в нём ищется чекед, и так постоянно пока не находится (из 99999 попыток раз).
Этот способ хоть и работает, но он в данном случае как-то не очень. :(

А можно какое-либо более рациональное решение найти тут?

iMacros » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media. » 24-11-2018 23:24:52

PRESIDENT пишет:

А чего ты ждать то хочешь ???

ну вообще-то я по аналогии с каким-нибудь текстом на сайте, думал что этот чекед появится после того, как я вручную разгадаю капчу. То есть получается что происходит ожидания этого чекеда и как только он появится, то происходят дальнейшие действия. А до того как чекед не появился, то есть пока капча не разгадана, он просто находится в ожидании. Как-то так.
Но! Как показала практика (я уже опробировал этот метод) ни фига оно не получается так. Ожидание я сделал,  и оно ожидает появление чекеда, но потом все равно не срабатывает. Наверно потому что там общий тест не такой как надо, то есть есть и пробелы. И если заменять на * то все равно не получается.

24-11-2018 23:28:55
Вот такой текст получается, если чекед есть:[spoiler][code]<div class="rc-anchor-center-item rc-anchor-checkbox-holder" style="outline: 1px solid blue;"><span class="recaptcha-checkbox goog-inline-block recaptcha-checkbox-unchecked rc-anchor-checkbox recaptcha-che

iMacros » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media. » 24-11-2018 17:55:03

Условие такое в этом коде есть, вот оно:

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

Выделить код

Код:

        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 30\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*'); // <--- Нажатие кнопки на самом сайте, тег кнопки может отличаться
            iimPlayCode('WAIT SECONDS=1');}}             


Но тут есть одно НО: там проверяется наличие элемента и если он есть, то срабатывает команда "дальше". А нам же надо, чтоб пока этот элемент не будет обнаружен, то будет происходить ожидание до тех пор пока этот элемент не появится. Вопрос: как так сделать, чтоб было это ожидание? Тут просто командой SET !TIMEOUT_STEP 99999 не решить, поскольку код сначала делает экстракт и потом из него уже ищет совпадение. В принципе можно зациклить это действие, чтоб каждую секунду делал экстракт и проверял наличие нужного элемен

iMacros » iMacros: Капчи, сохранение и распознавание. reCaptcha, Solve Media. » 24-11-2018 15:43:58

Ребята, подскажите-ка есть ли в коде распознавания гуглокапчи, что в шапке темы, код-строчка по определению что капча распознана? Ну то есть, когда появляется зелёная птичка:

скрытый текст
http://funkyimg.com/i/2Ntvc.png

только после этого скрипт нажимает на кнопку "дальше"? То есть условием нажатия кнопки "далее" должна быть появившаяся "зелёная птичка (галочка)". А до этого скрипт ждёт её появления столько сколько надо пока капча гадается (вручную). И как только "птичка" появилась, то тут же автоматом срабатывает команда нажатия кнопки "далее".
Вот код из шапки, подскажите где тут такое условие и есть ли оно там вообще?
[spoiler][code]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', '-re

Board footer

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