Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (1): [1]   

> Без описания
Felix_I
Отправлено: 09 Марта, 2020 - 21:50:16
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 5
Дата рег-ции: Март 2020  
Откуда: Челябинск
Репутация: 0




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


Нажмите для увеличения

Нажмите для увеличения


Нажмите для увеличения



Есть какие нибудь идеи по-этому поводу?

Буду очень признателен Вашей помощи.

(Отредактировано автором: 09 Марта, 2020 - 22:01:19)

 
 Top
Zireael
Отправлено: 09 Марта, 2020 - 22:17:07
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4397
Дата рег-ции: Нояб. 2017  
Репутация: 580




 Цитата:
Есть какие нибудь идеи по-этому поводу?

Использовать распознавание текста readtext.
Потом уже не проблема посчитать результат и нажать куда надо.
 
 Top
Felix_I
Отправлено: 09 Марта, 2020 - 22:23:58
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 5
Дата рег-ции: Март 2020  
Откуда: Челябинск
Репутация: 0




 Zireael пишет:
 Цитата:
Есть какие нибудь идеи по-этому поводу?

Использовать распознавание текста readtext.
Потом уже не проблема посчитать результат и нажать куда надо.

Подскажи пожалуйста, как результат сложения распознать в строке ответов и чтобы она нажала на него?
Совсем новичок в этом, очень интересно разобраться.
 
 Top
Zireael
Отправлено: 09 Марта, 2020 - 22:29:28
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4397
Дата рег-ции: Нояб. 2017  
Репутация: 580




Для начала разберитесь с распознаванием текста, чтобы корректно распознавались цифры. Остальное потом, иначе просто запутаетесь в коде.
 
 Top
Gramestory
Отправлено: 10 Марта, 2020 - 01:49:25
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 1
Дата рег-ции: Март 2020  
Репутация: 0




Аналогичная проблема. Программа корректно распознает текст, в данном случае математическое выражение, но если выводить в messagebox (text_KIB), то записывается оно, допустим, в виде 5+6. А дальше я уже не понимаю, что нужно прописать, чтобы программа это посчитала и вывела в виде другой переменной.
 
 Top
Zireael
Отправлено: 10 Марта, 2020 - 09:32:35
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4397
Дата рег-ции: Нояб. 2017  
Репутация: 580




 Цитата:
что нужно прописать, чтобы программа это посчитала и вывела в виде другой переменной.

CODE:
string Text="5 + 6 = ?"; // допустим это распознанный текст
messagebox(Text);


string num[2];
int summa;

if(regexsearch(2, #num[0], Text, "\d+") == 2) // поиск в строке 2х чисел
{
summa=formatsn(num[0])+formatsn(num[1]); // складываем числа
messagebox("Результат сложения: "+format(summa));

// дальнейшие действия

}
else messagebox("2 числа не найдены");
 
 Top
Felix_I
Отправлено: 10 Марта, 2020 - 18:20:13
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 5
Дата рег-ции: Март 2020  
Откуда: Челябинск
Репутация: 0




 Zireael пишет:
Для начала разберитесь с распознаванием текста, чтобы корректно распознавались цифры. Остальное потом, иначе просто запутаетесь в коде.

Мне осталось последнее действие, навести мышью на ответ и выполнить левый клик по нему, не могу допереть до этого. Остальное я все уже прописал, она считывает пример, считает его. После чего смотрит нижнюю строку, также распознает ее и переводит в текстовый формат.

На messagebox не обращайте внимания, пока так для себя.

CODE:
string Text;
string answer;
int color_text_KIB_6[2];
color_text_KIB_6[0]=16579836; color_text_KIB_6[1]=16575447;
int color_text_KIB_5[1];
color_text_KIB_5[0]=16579836;
int color_fon_KIB_6[2];
color_fon_KIB_6[0]=2235931; color_fon_KIB_6[1]=15502097;
int color_fon_KIB_5[1];
color_fon_KIB_5[0]=2235931;
loadsymbolbase("C:\Users\User\Desktop\Kibor\BOTS\bCif.sib");
loadsymbolbase("C:\Users\User\Desktop\Kibor\BOTS\Cifres.sib");
win w_KIB;
int ex_KIB, ey_KIB, sum_KIB, x_KIB, yKIB;

start();

messagebox ("next blok");
goto m_KIB1;
m_KIB9: capcha:;
goto m_KIB7;
m_KIB3: ans:;

readtext(NUM | MARK, #answer, 8, 1, -1, -1, -1, #color_text_KIB_6[0], #color_fon_KIB_6[0], 126, -1, 676, 421, 924, 433, w_KIB);
messagebox(answer);
goto exit_KIB;
m_KIB6: int summa;
string num[2];

if(regexsearch(2, #num[0], Text, "\d+") == 2)
{
summa=formatsn(num[0])+formatsn(num[1]);
messagebox ("resul: "+format(summa));
}

goto ans;
goto exit_KIB;
m_KIB7: readtext(NUM | MARK, #Text, 8, 1, -1, -1, -1, #color_text_KIB_5[0], #color_fon_KIB_5[0], 37, -1, 752, 384, 813, 405, w_KIB);
goto m_KIB6;
m_KIB1: goto capcha;

exitKIB:;


function start()
{
pause(1000);
int x, y;
getmouse(x, y);
w_KIB=getwindow(0, x, y);
ex_KIB=w_KIB.widthclient; ey_KIB=w_KIB.heightclient;
}

(Добавление)
Не много сократил код, в визуальном редакторе все в отдельные функции проставил.

function select_answer() - эта функция будет наведение мышки на правильный ответ по координате

CODE:
string Text, answer;
int color_text_KIB_6[2];
color_text_KIB_6[0]=16579836; color_text_KIB_6[1]=16575447;
int color_text_KIB_5[2];
color_text_KIB_5[0]=16579836; color_text_KIB_5[1]=16575447;
int color_fon_KIB_6[2];
color_fon_KIB_6[0]=2235931; color_fon_KIB_6[1]=15502097;
int color_fon_KIB_5[2];
color_fon_KIB_5[0]=2235931; color_fon_KIB_5[1]=15502097;
loadsymbolbase("C:\Users\User\Desktop\Kibor\BOTS\Cifres.sib");
win w_KIB;
int ex_KIB, ey_KIB, sum_KIB, x_KIB, yKIB;

start();

read_capcha();

read_answer();

selectanswer();



function start()
{
pause(1000);
int x, y;
getmouse(x, y);
w_KIB=getwindow(0, x, y);
ex_KIB=w_KIB.widthclient; ey_KIB=w_KIB.heightclient;
}

function read_capcha()
{

readtext(NUM | MARK, #Text, 8, 1, -1, -1, -1, #color_text_KIB_5[0], #color_fon_KIB_5[0], 126, -1, 748, 383, 813, 408, w_KIB);

int summa;
string num[2];

if(regexsearch(2, #num[0], Text, "\d+") == 2)
{
summa=formatsn(num[0])+formatsn(num[1]);
messagebox ("resul: "+format(summa));
}

}


function read_answer()
{

loadsymbolbase("C:\Users\User\Desktop\Kibor\BOTS\bCif.sib");
for (int n=0; n<5; n++)
{
readtext(NUM | MARK, #answer[n][0], 8, 1, -1, -1, -1, #color_text_KIB_6[0], #color_fon_KIB_6[0], 126, -1, 679, 421, 919, 434, w_KIB);
}
}
function select_answer()
{

(Отредактировано автором: 10 Марта, 2020 - 18:21:11)

 
 Top
Zireael
Отправлено: 11 Марта, 2020 - 00:15:57
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4397
Дата рег-ции: Нояб. 2017  
Репутация: 580




code (Отобразить)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by