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

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

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

> Без описания
Frixen
Отправлено: 26 Июня, 2020 - 09:20:40
Post Id



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


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




[img](для просмотра ссылки Вам необходимо авторизоваться) /img]

Доброго времени суток, нужна помощь, определил 3 варианта ответа с изображения(по видео уроку), вывел их на экран для наглядности, как среди 3 ответов найти верный?
Например int vopros = 9; Нужно сравнить число 9 с тремя вариантами ответа и навести на верный вариант мышку
CODE:
string Text_U[10];
string Text;
string otvet[1000];
int otvet_X[1000];
int otvet_Y[1000];
int id=0;

pause(1000);


int k=readtext (NUM | MARK, #Text_U[0], 2, -1, -1, -1, -1, -1, -1, 0, -1, 932, 399, 979, 535, -1);
for (int n=0; n<k; n++)
{
if (Text_U[n]!="")
{
regexreplace(-1, #Text_U[n], Text_U[n], " ", "");
if (regexsearch(1, #otvet[id], Text_U[n], "\d+")==1)
{
otvet_X[id]=symbolxpos(n, 0);
otvet_Y[id]=symbolypos(n, 0);
id++;
}
}
}


for (n=0; n<id; n++)
{
textout(n, 957+otvet_X[n], 385+otvet_Y[n], otvet[n], 0);

}

loop()sleep(100);

(Отредактировано автором: 26 Июня, 2020 - 09:23:48)

 
 Top
Chick
Отправлено: 26 Июня, 2020 - 09:52:18
Post Id



Пользователь
Наблюдатель


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




так скачай все варианты ответов картинками, и mousemove на правильный
 
 Top
Frixen
Отправлено: 26 Июня, 2020 - 10:32:44
Post Id



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


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




 Chick пишет:
так скачай все варианты ответов картинками, и mousemove на правильный

[img](для просмотра ссылки Вам необходимо авторизоваться) /img]
Дак я же определил каждый вариант с помощью базы, как мне просто сравнить его с нужным и выбрать правильный?

(Отредактировано автором: 26 Июня, 2020 - 10:34:14)

 
 Top
Nikanr
Отправлено: 26 Июня, 2020 - 10:47:57
Post Id



Пользователь
Специалист


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




 Frixen пишет:
как мне просто сравнить его с нужным и выбрать правильный


Считывай в массив числа ответов (обучи базу на них если символы отличаются). Потом перебирай варианты с помощью цикла, и поставь условие в цикле: если результат вычислений совпадает с распознанным числом в массиве, узнавай позицию этого символа с помощью symbolpos и делай клик мышкой. После, прерви цикл

(Отредактировано автором: 26 Июня, 2020 - 10:49:20)

 
 Top
Frixen
Отправлено: 26 Июня, 2020 - 10:59:45
Post Id



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


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




 Nikanr пишет:
 Frixen пишет:
как мне просто сравнить его с нужным и выбрать правильный


Считывай в массив числа ответов (обучи базу на них если символы отличаются). Потом перебирай варианты с помощью цикла, и поставь условие в цикле: если результат вычислений совпадает с распознанным числом в массиве, узнавай позицию этого символа с помощью symbolpos и делай клик мышкой. После, прерви цикл


CODE:
if (test==otvet[0])
{
mousemove(945+otvet_X[0],385+otvet_Y[0]);
}
if (test==otvet[1])
{
mousemove(945+otvet_X[1],385+otvet_Y[1]);
}
if (test==otvet[2])
{
mousemove(945+otvet_X[2],385+otvet_Y[2]);
}


Вот такой гавнокод ошибку выдает почему-то
 
 Top
Zireael
Отправлено: 26 Июня, 2020 - 11:14:54
Post Id



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


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




 Цитата:
Вот такой гавнокод ошибку выдает почему-то

Скорее всего пытаетесь сравнить число со строкой.
 Цитата:
как среди 3 ответов найти верный?

CODE:
int vopros = 9;
string otvet[1000] = {"10", "9", "7"} // допустим это распознаный текст
int otvet_X[1000] = {100, 100, 100} // координаты X
int otvet_Y[1000] = {200, 400, 600} // координаты Y
int id = 3;


// цикл для поиска ответа
for(int i=0; i<id; i++)
{
if(vopros == formatsn(otvet[i]))
{
messagebox("Правильный ответ "+format(i+1));
mousemove(otvet_X[i], otvet_Y[i]);
break;
}
}
 
 Top
Frixen
Отправлено: 26 Июня, 2020 - 17:35:39
Post Id



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


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




В общем все работает прекрасно за исключением одного, мне надо чтоб это все было в цикле, я это сделал, т.к капча может появится в любой момент и скрипт ее решает, но видимо в памяти остаются и предыдущие числа (они отображаются на экране для наглядности работы скрипта) и даже если этот textout убрать, то мышка ходит после решения капчи по предыдущим координатам, как сделать чтоб readtext срабатывал только в момент появления капчи, а не постоянно

[youtube=test](для просмотра ссылки Вам необходимо авторизоваться) /youtube]

(Отредактировано автором: 26 Июня, 2020 - 17:52:53)

 
 Top
Zireael
Отправлено: 27 Июня, 2020 - 01:04:51
Post Id



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


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




 Цитата:
то мышка ходит после решения капчи по предыдущим координатам

Переменную id нужно обнулять вначале цикла.
CODE:
int id;

loop()
{
id = 0;
// ожидание капчи
// решение капчи
sleep(100);
}

 Цитата:
как сделать чтоб readtext срабатывал только в момент появления капчи, а не постоянно

В цикле искать кнопку 'Ответить'. Когда найдётся решать капчу.
 Цитата:
while(findimage(...) == 0) // ждать пока не найдена картинка
{
sleep(10);
}
// решение капчи
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 3 (гостей: 3, зарегистрированных: 0)
« Вопросы и решение проблем »


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




Powered by