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

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

 Страниц (9): « 1 [2] 3 4 5 6 7 8 9 »   

> Описание: робот для автоматизации на интернет-странице с флешем
darow
Отправлено: 07 Января, 2014 - 18:21:15
Post Id



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


Покинул форум
Сообщений всего: 45
Дата рег-ции: Янв. 2014  
Откуда: Украина
Репутация: 0




int Image[74][33];
loadimage (#Image[0][0], "C:\Users\Àðñåíèé\Desktop\Image_0_nayti.bmp"Подмигивание;
int color, xe, ye;
getdisplay(color, 1366, 768);//Ðàçðåøåíèå ýêðàíà çàïèñàòü â xe, ye
int x, y;
if (findimage(1, #Image[0][0], 16777215, #x, #y, 0, 0, xe, ye, -1)-1)mousemove (x, y);
else messagebox ("Íå íàøëè."Подмигивание;

вот последний скрипт, разрешение установил дисплея, изображ переделал:(для просмотра ссылки Вам необходимо авторизоваться)
все равно вот так пишет: http://clip2net.com/s/6xqJ0t

(Отредактировано автором: 07 Января, 2014 - 18:23:24)

 
 Top
Kibor
Отправлено: 07 Января, 2014 - 18:41:22
Post Id



Администратор
Эксперт


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




 darow пишет:
getdisplay(color, 1366, 768);//Ðàçðåøåíèå ýêðàíà çàïèñàòü â xe, ye
int x, y;
if (findimage(1, #Image[0][0], 16777215, #x, #y, 0, 0, xe, ye, -1)-1)mousemove (x, y);


Ошибки.
 
 Top
darow
Отправлено: 07 Января, 2014 - 21:46:27
Post Id



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


Покинул форум
Сообщений всего: 45
Дата рег-ции: Янв. 2014  
Откуда: Украина
Репутация: 0




что вы имеете ввиду? я вместо хе и ye вписал разрешение экрана
 
 Top
Kibor
Отправлено: 07 Января, 2014 - 22:11:00
Post Id



Администратор
Эксперт


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




Я имею в виду что комментарий просто описывает что делает функция.
То есть это функция записывает в переменные разрешение экрана.
Так же не ясно почему у Вас в
 Kibor пишет:
-1)-1)m
стоит -, а не == как я написал.
Я дал полный пример. Надо только сделать нормальный рисунок и подставить его.
 
 Top
darow
Отправлено: 07 Января, 2014 - 22:12:09
Post Id



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


Покинул форум
Сообщений всего: 45
Дата рег-ции: Янв. 2014  
Откуда: Украина
Репутация: 0




по-моему понял...
в общем оставляю последний вариант:

int Image[74][33];
loadimage (#Image[0][0], "C:\Image_0_nayti.bmp"Подмигивание;
int color, xe, ye;
getdisplay(color, xe, ye);//Ðàçðåøåíèå ýêðàíà çàïèñàòü â xe, ye
int x, y;
if (findimage(1, #Image[0][0], 16777215, #x, #y, 0, 0, xe, ye, -1)==1)mousemove (x, y);
else messagebox ("Íå íàøëè."Подмигивание;

не находит кнопку... видимо что-то с изображением попробую с ним поиграться
 
 Top
darow
Отправлено: 08 Января, 2014 - 00:12:57
Post Id



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


Покинул форум
Сообщений всего: 45
Дата рег-ции: Янв. 2014  
Откуда: Украина
Репутация: 0




ну в мучениях и с помощью Владимира родил наконец-то клик мышью в кнопку "Найти" на странице яндекса:

CODE:
int Image_0[62][22];loadimage (#Image_0[0][0], "C:\Image_0.bmp");
int rzz=10, pr=90;
int PosX_0, PosY_0;
if (findimage(1, #Image_0[0][0], 0, #PosX_0, #PosY_0, 0, 0, 1366, 706, rzz, rzz, rzz, rzz, rzz, rzz, pr, 1, -1)==1)
{
mouse(LEFT, PosX_0+10, PosY_0+10);
}
else messagebox ("Íå íàøëè.");



в процессе работы выяснилось что кнопка найти у яндекса на главной странице отличается чем на других страницах яндекса, поэтому было внесено уточнение
на погрешность изменения тона, теперь на всех страницах яндекса данный скрипт находит кнопку и кликает ее. Ну надеюсь на сегодня первый урок мой закончен... прямо скажу пока не просто, но будем грызть науку Кибора...

(Отредактировано автором: 08 Января, 2014 - 00:17:49)

 
 Top
Kibor
Отправлено: 08 Января, 2014 - 00:19:30
Post Id



Администратор
Эксперт


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




Улыбка Будут вопросы - обращайтесь. Все проще чем кажется. Главное понять азы и не забывать пользоваться http://kibor-bot.com/forum/topic...m=14&topic=9 для поиска описаний и примеров.
 
 Top
darow
Отправлено: 09 Января, 2014 - 00:02:05
Post Id



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


Покинул форум
Сообщений всего: 45
Дата рег-ции: Янв. 2014  
Откуда: Украина
Репутация: 0




ну вот пробую первый раз навоять скрипт по поиску цифр и их фиксации (по образцу поиска номера телефона методом перебора картинок цифр):
(Добавление)
CODE:
int color, xe, ye;//ðàçðåøåíèå ýêðàíà
getdisplay(color, xe, ye);//Óçíàòü ðàçðåøåíèå ýêðàíà


int stvol_X[1], stvol_Y[1];// êîîðäèíàòû ñòàðòîâîé òî÷êè â âîëåéáîëå
int k1_X[2], k1_Y[2];//êîîðäèíàòû íà÷àëà è êîíöà ðàìêè ãäå èñêàòü 1êîýô
int Ck1_x[10], Ck1_y[10];//êîîðäèíàòû íàéäåíûõ öèôð 1êîýô 3øò
int fl1[10];// ôëàã, 1 åñëè íàéäåíà öèôðà 1êîýô
int rast_k1_x;//ðàñòîÿíèå îò öèôðû äî íà÷àëà ðàìêè ïîèñêà 1êîýô

int n;
int CIF;
string kf1;// 1êîýô

int razmerX[10];//òóò ðàçìåðû ðèñóíêîâ öèôð
[i](Добавление)[/i]
//Çàãðóçêà ðèñóíêîâ
int im_stvol[107][11];loadimage (#im_stvol[0][0], "C:\Image_ishody po setam.bmp");//ðèñ ñòàðòîâîé òî÷êè â âîëåéáîëå

//ðèñ öèôð
int C_0[6][8];loadimage (#C_0[0][0], "C:\0_citi.bmp");
int C_1[5][8];loadimage (#C_1[0][0], "C:\1_citi.bmp");
int C_2[6][8];loadimage (#C_2[0][0], "C:\2_citi.bmp");
int C_3[6][8];loadimage (#C_3[0][0], "C:\3_citi.bmp");
int C_4[7][8];loadimage (#C_4[0][0], "C:\4_citi.bmp");
int C_5[6][8];loadimage (#C_5[0][0], "C:\5_citi.bmp");
int C_6[6][8];loadimage (#C_6[0][0], "C:\6_citi.bmp");
int C_7[6][8];loadimage (#C_7[0][0], "C:\7_citi.bmp");
int C_8[6][8];loadimage (#C_8[0][0], "C:\8_citi.bmp");
int C_9[6][8];loadimage (#C_9[0][0], "C:\9_citi.bmp");

razmerX[0]=imagewidth(#C_0[0][0]);
razmerX[1]=imagewidth(#C_1[0][0]);
razmerX[2]=imagewidth(#C_2[0][0]);
razmerX[3]=imagewidth(#C_3[0][0]);
razmerX[4]=imagewidth(#C_4[0][0]);
razmerX[5]=imagewidth(#C_5[0][0]);
razmerX[6]=imagewidth(#C_6[0][0]);
razmerX[7]=imagewidth(#C_7[0][0]);
razmerX[8]=imagewidth(#C_8[0][0]);
razmerX[9]=imagewidth(#C_9[0][0]);
[i](Добавление)[/i]
if (findimage(1, #im_stvol[0][0], 0, #stvol_X[0], #stvol_Y[0], 0, 0, xe, ye, -1)==1)//Íàøëè åñëè ðèñóíîê ñòàðòîâîé òî÷êè â âîëåéáîëå
{
//ðàñ÷åò ðàìêè ïîèñêà öèôð èñõîäÿ èç êîîðäèíàò ðèñóíêà òðóáêè
X[0]=stvol_X[0]; Y[0]=stvol_Y[0];
X[1]=X[0]+52; Y[1]=Y[0]+40;

kf1="";

int s=0;
skan:if (s<3)//èùåì 3 öèôðû
{
[i](Добавление)[/i]
//èùåì ïî 1 öèôðå â ðàìêå ïîèñêà. çàïèñûâàåì êîîðäèíàòû
fl[0]=findimage(1, #C_0[0][0], 255, #Ck1_x[0], #Ck1_y[0], X[0], Y[0], X[1], Y[1], -1);
fl[1]=findimage(1, #C_1[0][0], 255, #Ck1_x[1], #Ck1_y[1], X[0], Y[0], X[1], Y[1], -1);
fl[2]=findimage(1, #C_2[0][0], 255, #Ck1_x[2], #Ck1_y[2], X[0], Y[0], X[1], Y[1], -1);
fl[3]=findimage(1, #C_3[0][0], 255, #Ck1_x[3], #Ck1_y[3], X[0], Y[0], X[1], Y[1], -1);
fl[4]=findimage(1, #C_4[0][0], 255, #Ck1_x[4], #Ck1_y[4], X[0], Y[0], X[1], Y[1], -1);
fl[5]=findimage(1, #C_5[0][0], 255, #Ck1_x[5], #Ck1_y[5], X[0], Y[0], X[1], Y[1], -1);
fl[6]=findimage(1, #C_6[0][0], 255, #Ck1_x[6], #Ck1_y[6], X[0], Y[0], X[1], Y[1], -1);
fl[7]=findimage(1, #C_7[0][0], 255, #Ck1_x[7], #Ck1_y[7], X[0], Y[0], X[1], Y[1], -1);
fl[8]=findimage(1, #C_8[0][0], 255, #Ck1_x[8], #Ck1_y[8], X[0], Y[0], X[1], Y[1], -1);
fl[9]=findimage(1, #C_9[0][0], 255, #Ck1_x[9], #Ck1_y[9], X[0], Y[0], X[1], Y[1], -1);
[i](Добавление)[/i]
//òóò ïåðåáèðàåì íàéäåííûå öèôðû
rast_x=99999;
n=0;
lop: if(n<10)
{
if (fl1[n]==1)//åñëè òàêàÿ öèôðà âîîáùå íàéäåíà
{
if (Ck1_x[n]-X[0]<rast_ê1_x)//ïðîâåðÿåì ðàñòîÿíèå îò íà÷àëà ðàìêè äëÿ ïîèñêà äî öèôðû
{//åñëè îíî ìåíüøå óæå íàéäåííîãî çíà÷èò öèôðà ëåâåå. çïàèñûâàåì åå è íîâîå ðàñòîÿíèå
CIF=n;
rast_x=Cê1_x[n]-X[0];
}
[i](Добавление)[/i]
}
n++;
goto lop;
}
if (rast_k1_x==99999)goto t;//Åñëè ïåðåìåííàÿ íå èçìåíèëàñü. íåò öèôð
X[0]=X[0]+Ck1_x[CIF]+razmerX[CIF];//ðàñ÷åò íîâîãî X äëÿ ðàìêè ïîèñêà. ÷òî áû ñëåäóþùèé ïîèñê íà÷èíàòü óæå ïîñëå íàéäåíîé öèôðû

kf1=kf1+format(CIF);//ïðèïèøåì íàéäåíóþ öèôðó
s++;
goto skan;
}

}
t:;

messagebox(kf1)
[i](Добавление)[/i]
ожидал ошибки где угодно, но почему-то она выскочила перед началом перебора:

http://clip2net.com/s/6y3zXT

Владимир, подскажите, пож что ему надо?
[i](Добавление)[/i]
так ну присмотревшись я увидел что во всех флагах забыл 1 добавить:

//èùåì ïî 1 öèôðå â ðàìêå ïîèñêà. çàïèñûâàåì êîîðäèíàòû
fl1[0]=findimage(1, #C_0[0][0], 255, #Ck1_x[0], #Ck1_y[0], X[0], Y[0], X[1], Y[1], -1);
fl1[1]=findimage(1, #C_1[0][0], 255, #Ck1_x[1], #Ck1_y[1], X[0], Y[0], X[1], Y[1], -1);
fl1[2]=findimage(1, #C_2[0][0], 255, #Ck1_x[2], #Ck1_y[2], X[0], Y[0], X[1], Y[1], -1);
fl1[3]=findimage(1, #C_3[0][0], 255, #Ck1_x[3], #Ck1_y[3], X[0], Y[0], X[1], Y[1], -1);
fl1[4]=findimage(1, #C_4[0][0], 255, #Ck1_x[4], #Ck1_y[4], X[0], Y[0], X[1], Y[1], -1);
fl1[5]=findimage(1, #C_5[0][0], 255, #Ck1_x[5], #Ck1_y[5], X[0], Y[0], X[1], Y[1], -1);
fl1[6]=findimage(1, #C_6[0][0], 255, #Ck1_x[6], #Ck1_y[6], X[0], Y[0], X[1], Y[1], -1);
fl1[7]=findimage(1, #C_7[0][0], 255, #Ck1_x[7], #Ck1_y[7], X[0], Y[0], X[1], Y[1], -1);
fl1[8]=findimage(1, #C_8[0][0], 255, #Ck1_x[8], #Ck1_y[8], X[0], Y[0], X[1], Y[1], -1);
fl1[9]=findimage(1, #C_9[0][0], 255, #Ck1_x[9], #Ck1_y[9], X[0], Y[0], X[1], Y[1], -1);

(Добавление)
но появилась следующая:
(для просмотра ссылки Вам необходимо авторизоваться)
я даже толком не пойму в какой строке она это нашла
 
 Top
Kibor
Отправлено: 09 Января, 2014 - 12:02:20
Post Id



Администратор
Эксперт


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




CODE:
X[0], Y[0], X[1], Y[1]


Не объявлены.

Оформляйте все в тег код, отключайте смайлики. Текст копируйте не с Кибор, а сохраняйте в файле и копируйте с него.
 
 Top
darow
Отправлено: 09 Января, 2014 - 13:29:58
Post Id



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


Покинул форум
Сообщений всего: 45
Дата рег-ции: Янв. 2014  
Откуда: Украина
Репутация: 0




CODE:
int color, xe, ye;//разрешение экрана
getdisplay(color, xe, ye);//Узнать разрешение экрана


int stvol_X[1], stvol_Y[1];// координаты стартовой точки в волейболе
int k1_X[2], k1_Y[2];//координаты начала и конца рамки где искать 1коэф
int Ck1_x[10], Ck1_y[10];//координаты найденых цифр 1коэф 3шт
int fl1[10];// флаг, 1 если найдена цифра 1коэф
int rast_k1_x;//растояние от цифры до начала рамки поиска 1коэф

int n;
int CIF;
string kf1;// 1коэф

int razmerX[10];//тут размеры рисунков цифр

(Добавление)
CODE:
//Загрузка рисунков
int im_stvol[107][11];loadimage (#im_stvol[0][0], "C:\Image_ishody po setam.bmp");//рис стартовой точки в волейболе

//рис цифр
int C_0[6][8];loadimage (#C_0[0][0], "C:\0_citi.bmp");
int C_1[5][8];loadimage (#C_1[0][0], "C:\1_citi.bmp");
int C_2[6][8];loadimage (#C_2[0][0], "C:\2_citi.bmp");
int C_3[6][8];loadimage (#C_3[0][0], "C:\3_citi.bmp");
int C_4[7][8];loadimage (#C_4[0][0], "C:\4_citi.bmp");
int C_5[6][8];loadimage (#C_5[0][0], "C:\5_citi.bmp");
int C_6[6][8];loadimage (#C_6[0][0], "C:\6_citi.bmp");
int C_7[6][8];loadimage (#C_7[0][0], "C:\7_citi.bmp");
int C_8[6][8];loadimage (#C_8[0][0], "C:\8_citi.bmp");
int C_9[6][8];loadimage (#C_9[0][0], "C:\9_citi.bmp");

(Добавление)
CODE:
razmerX[0]=imagewidth(#C_0[0][0]);
razmerX[1]=imagewidth(#C_1[0][0]);
razmerX[2]=imagewidth(#C_2[0][0]);
razmerX[3]=imagewidth(#C_3[0][0]);
razmerX[4]=imagewidth(#C_4[0][0]);
razmerX[5]=imagewidth(#C_5[0][0]);
razmerX[6]=imagewidth(#C_6[0][0]);
razmerX[7]=imagewidth(#C_7[0][0]);
razmerX[8]=imagewidth(#C_8[0][0]);
razmerX[9]=imagewidth(#C_9[0][0]);

if (findimage(1, #im_stvol[0][0], 0, #stvol_X[0], #stvol_Y[0], 0, 0, xe, ye, -1)==1)//Нашли если рисунок стартовой точки в волейболе
{

(Добавление)
CODE:
//расчет рамки поиска цифр исходя из координат рисунка трубки
X[0]=stvol_X[0]; Y[0]=stvol_Y[0];
X[1]=X[0]+52; Y[1]=Y[0]+40;

kf1="";

int s=0;
skan:if (s<3)//ищем 3 цифры
{

//ищем по 1 цифре в рамке поиска. записываем координаты
fl1[0]=findimage(1, #C_0[0][0], 255, #Ck1_x[0], #Ck1_y[0], X[0], Y[0], X[1], Y[1], -1);
fl1[1]=findimage(1, #C_1[0][0], 255, #Ck1_x[1], #Ck1_y[1], X[0], Y[0], X[1], Y[1], -1);
fl1[2]=findimage(1, #C_2[0][0], 255, #Ck1_x[2], #Ck1_y[2], X[0], Y[0], X[1], Y[1], -1);
fl1[3]=findimage(1, #C_3[0][0], 255, #Ck1_x[3], #Ck1_y[3], X[0], Y[0], X[1], Y[1], -1);
fl1[4]=findimage(1, #C_4[0][0], 255, #Ck1_x[4], #Ck1_y[4], X[0], Y[0], X[1], Y[1], -1);
fl1[5]=findimage(1, #C_5[0][0], 255, #Ck1_x[5], #Ck1_y[5], X[0], Y[0], X[1], Y[1], -1);
fl1[6]=findimage(1, #C_6[0][0], 255, #Ck1_x[6], #Ck1_y[6], X[0], Y[0], X[1], Y[1], -1);
fl1[7]=findimage(1, #C_7[0][0], 255, #Ck1_x[7], #Ck1_y[7], X[0], Y[0], X[1], Y[1], -1);
fl1[8]=findimage(1, #C_8[0][0], 255, #Ck1_x[8], #Ck1_y[8], X[0], Y[0], X[1], Y[1], -1);
fl1[9]=findimage(1, #C_9[0][0], 255, #Ck1_x[9], #Ck1_y[9], X[0], Y[0], X[1], Y[1], -1);

(Добавление)
CODE:
//тут перебираем найденные цифры
rast_x=99999;
n=0;
lop: if(n<10)
{
if (fl1[n]==1)//если такая цифра вообще найдена
{
if (Ck1_x[n]-X[0]<rast_k1_x)//проверяем растояние от начала рамки для поиска до цифры
{//если оно меньше уже найденного значит цифра левее. зпаисываем ее и новое растояние
CIF=n;
rast_x=Cк1_x[n]-X[0];
}
}
n++;
goto lop;
}
if (rast_k1_x==99999)goto t;//Если переменная не изменилась. нет цифр
X[0]=X[0]+Ck1_x[CIF]+razmerX[CIF];//расчет нового X для рамки поиска. что бы следующий поиск начинать уже после найденой цифры

kf1=kf1+format(CIF);//припишем найденую цифру
s++;
goto skan;
}

}
t:;

messagebox(kf1);

(Добавление)
 Kibor пишет:
CODE:
X[0], Y[0], X[1], Y[1]


Не объявлены.


что вы имеете ввиду?
 
 Top
Страниц (9): « 1 [2] 3 4 5 6 7 8 9 »
Сейчас эту тему просматривают: 6 (гостей: 6, зарегистрированных: 0)
« Вопросы и решение проблем »


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




Powered by