1
Биржа труда / Re: Ищу програмиста
« on: August 28, 2017, 05:18:17 PM »
Попросите питонистов, на Питоне парсер делать проще)
Добавлена тема оформления "Clickermann" для кода с подсветкой синтаксиса. Выбирается из выпадающего списка "Код" (рядом с "цвет", "размер" и "шрифт") в режиме редактирования поста. Либо просто BB-тегом "code=clickermann"
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
К сожалению первый способ не подошел, все равно не продолжается, а цвета он находит нормально, я проверил без автозапуска скрипта и приложения. Не знаю что и делать(Возможно такое, что во время снятия скриншота цвета не успевают прогружаться? Сохраните скриншот, посмотрите, что там есть.
Но у меня каждый раз 1-ая часть повторяеться, т.е. скрипт дальше не идет.Возможно, таких цветов нет в куске экрана (0,0,261,236) либо скрипт не успевает их найти. Допишите ELSE, чтобы узнать. Например:
IF_PIXEL_IN(0,0,261,236,16038,350881)
...
ELSE
PRINT("Что-то случилось")
WAITMS(100)
END_IF
Ещё как вариант можно подождать, пока цвет появится (пример есть в редакторе редактора Шаблоны - Циклы, условия - Ожидание цвета IF_PIXEL_IN). Как сделать так чтобы 1-ая часть сработало один раз, а затем работала только 2-ая до перезапуска компа.В главном окне кликера поставьте выполнение 1 раз. Режим выполнения - Фиксированное 1 - Применить.
Не знаю как в текст его добавить, у меня каракули получаютсяВыделяйте и копируйте код скрипта в русской раскладке.
По полям ввода в браузере тоже должно переключаться по TAB.Тут я опасаюсь, что один из 12и TABов подряд может сбиться. А в начале TABом просто не перейдёшь.
Следующий пациент это как раз и есть на 30 пкс ниже?Да, 1 цикл - 1 человек. $i - просто для конечного количества выполнений цикла.
Почему у тебя $_return вне условия поиска? Это системные переменные для вывода найденных координат. Значения в них не обнуляются даже после остановки скрипта. Поэтому они должны быть всегда в условиях поиска для возврата найденных значений.
У тебя сразу в начале кодаCode: (clickermann) [Select]LCLICK($_return1, $_return2)
При первом запуске кликера там будет 0,0 а потом последние найденные координаты.
И вообще гораздо лучше экспортировать таблицу в TXT в разделителями по Tab и работать потом с файлом напрямую.
$n_patient = 5 // ЗАПОЛНИТЬ количеством пациентов в файле
//нажать на поле
LCLICK($_return1, $_return2)
WAITMS (100)
//Копировать значение
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (200)
KEYDOWN (#C)
WAITMS (1000)
KEYUP (#C)
KEYUP (#CTRL)
// первый переход в гугл, получение координат
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (0,0, $_xmax,50, "chrome.bmp", -1, 80) //панель mustb сверху
LCLICK($_return1, $_return2)
$chrome_x = $_return1
$chrome_y = $_return2
WAITMS(1000)
END_IF
// жмяк на Добавить
GETSCREEN // снимок
COLORMODE(6) // цветокоррекция снимка
IF_PICTURE_IN (1000,0,$_xmax,200, "add.bmp", -1, 60) // поиск с 60% совпадением
LCLICK($_return1, $_return2)
$add_x = $_return1+10
$add_y = $_return2+10
WAITMS(1500)
END_IF
//жмяк в поле ввода иин
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (400,200, 1500,400, "leftfromlupa.bmp", -1, 100)
LCLICK($_return1, $_return2)
$leftfromlupa_x = $_return1
$leftfromlupa_y = $_return2
WAITMS(1000)
END_IF
//вставка иин
KEYDOWN (#CTRL)
WAITMS (100)
KEYDOWN (#V)
WAITMS (100)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
//поиск по иин
KEYDOWN (#ENTER)
WAITMS (150)
KEYUP (#ENTER)
WAITMS (500) // ждём, пока выскочит
//жмяк по выскочившему фио
LCLICK($_return1, $_return2+50)
$poppedup_fio_x = $_return1
$poppedup_fio_y = $_return2+50
WAITMS (500)
//первый переход в Эксель, получение координат
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (0,0,$_xmax,50, "excel.bmp", -1, 60)
LCLICK($_return1, $_return2)
$excel_x = $_return1
$excel_y = $_return2
WAITMS(1000)
END_IF
//Переход на поле справа
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//Копировать значение
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#C)
WAITMS (150)
KEYUP (#C)
KEYUP (#CTRL)
// переход в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
// переход в поле № снимка
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (400,300, 1000,700, "shotnumber.bmp", -1, 100) // скрин содержит и надпись Дата осмотра
LCLICK($_return1+200, $_return2+20)
$shotnumber_x = $_return1+200
$shotnumber_y = $_return2+30
WAITMS(1000)
END_IF
//вставка номера снимка
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#V)
WAITMS (150)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
//Переход на поле справа
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//Копировать даты
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#C)
WAITMS (150)
KEYUP (#C)
KEYUP (#CTRL)
// переход в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
//Переход через Дообследование
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//на Дату осмотра
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//вставка даты
KEYDOWN (#CTRL)
WAITMS (100)
KEYDOWN (#V)
WAITMS (100)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
//Переход через Направлен
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//на Дозу
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//ввод дозы = 5
KEYDOWN (#5)
WAITMS (100)
KEYUP (#5)
WAITMS (100)
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
//Переход на поле справа
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//Копировать дату след посещения
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#C)
WAITMS (1000)
KEYUP (#C)
KEYUP (#CTRL)
// переход в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
//Переход на дату след посещения
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//вставка даты след посещения
KEYDOWN (#CTRL)
WAITMS (100)
KEYDOWN (#V)
WAITMS (100)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
//Переход на поле справа (дата первого посещения)
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//Копировать дату первого посещения
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#C)
WAITMS (150)
KEYUP (#C)
KEYUP (#CTRL)
// переход в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
//переход в подвкладку Заключение !!!
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (500,300,900,500, "conclusion.bmp", -1, 95)
LCLICK($_return1, $_return2)
$conclusion_x = $_return1
$conclusion_y = $_return2+40
WAITMS(1000)
LCLICK($_return1, $_return2) //подвкладка опустится, будет видна кнопка Отмена
END_IF
//переход через Данные учёта (при Табе 1я ссылка)
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//и переход через ссылку Заключение
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//на Дату первого посещения
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//вставка даты первого посещения
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#V)
WAITMS (150)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
//жмяк отмены
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (750,450, $_xmax,$_ymax, "cancel.bmp", -1, 90)
LCLICK($_return1, $_return2)
$cancel_x = $_return1
$cancel_y = $_return2
WAITMS(500)
END_IF
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
//убираем выделение поля
KEYDOWN (#ENTER)
WAITMS (150)
KEYUP (#ENTER)
WAITMS (500) // ждём, пока выскочит
//переход на ИИН след человека
KEYDOWN (#DOWN) // переведёт строку вниз
WAITMS (100)
KEYUP (#DOWN)
WAITMS (100)
KEYDOWN (#LEFT) // переведёт строку влево 1
WAITMS (100)
KEYUP (#LEFT)
WAITMS (100)
KEYDOWN (#LEFT) // переведёт строку влево 2
WAITMS (100)
KEYUP (#LEFT)
WAITMS (100)
KEYDOWN (#LEFT) // переведёт строку влево 3
WAITMS (100)
KEYUP (#LEFT)
WAITMS (100)
KEYDOWN (#LEFT) // переведёт строку влево 4
WAITMS (100)
KEYUP (#LEFT)
WAITMS (100)
$i = 0
print($i)
print($n_patient)
WHILE($i < $n_patient)
print($i)
print("Вошёл в цикл")
//нажать на поле
//LCLICK(-1,-1)
//WAITMS (10000)
//Копировать значение
WAITMS (2000)
KEYDOWN (#CTRL)
WAITMS (200)
KEYDOWN (#C)
WAITMS (200)
KEYUP (#C)
WAITMS (100)
KEYUP (#CTRL)
WAITMS (1000)
print("Скопировал")
// жмяк в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
print("Перешёл в гугл")
// жмяк на кнопку Добавить
LCLICK($add_x, $add_y)
WAITMS(5000)
print("Нажал на кнопку Добавить")
// жмяк в поле ввода иин
LCLICK($leftfromlupa_x, $leftfromlupa_y)
WAITMS(1500)
print("Нажал в поле ввода иин")
//вставка иин
KEYDOWN (#CTRL)
WAITMS (100)
KEYDOWN (#V)
WAITMS (100)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
print("Вставил иин")
//поиск по иин. нажать в поле, чтобы сайт поискал
KEYDOWN (#ENTER)
WAITMS (150)
KEYUP (#ENTER)
WAITMS (500) // ждём, пока выскочит
print("Нажал Enter, чтобы сайт поискал")
//жмяк по выскочившему фио
LCLICK($poppedup_fio_x, $poppedup_fio_y)
WAITMS(1000)
print("Нажал по выскочившему фио")
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
//Переход на поле справа
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//Копировать значение
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#C)
WAITMS (150)
KEYUP (#C)
KEYUP (#CTRL)
// переход в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
// переход в поле № снимка
LCLICK($shotnumber_x, $shotnumber_y)
WAITMS(50)
print("Перешёл на номер снимка")
WAITMS(1000)
//вставка номера снимка
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#V)
WAITMS (150)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
print("Вставил номер снимка")
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
print("Перешёл в Эксель")
//Переход на поле справа
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//Копировать дату осмотра
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#C)
WAITMS (150)
KEYUP (#C)
KEYUP (#CTRL)
print("Скопировал дату осмотра")
// переход в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
print("Перешёл в гугл")
//Переход через Дообследование
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
print("TAB")
//на Дату осмотра
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
print("TAB")
//вставка даты
KEYDOWN (#CTRL)
WAITMS (100)
KEYDOWN (#V)
WAITMS (100)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
print("Вставил дату осмотра")
//Переход через Направлен
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//на Дозу
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//ввод дозы = 5
KEYDOWN (#5)
WAITMS (100)
KEYUP (#5)
WAITMS (100)
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
//Переход на поле справа
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//Копировать дату след посещения
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#C)
WAITMS (1000)
KEYUP (#C)
KEYUP (#CTRL)
// жмяк в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
//Переход на дату след посещения
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//вставка даты след посещения
KEYDOWN (#CTRL)
WAITMS (100)
KEYDOWN (#V)
WAITMS (100)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (150)
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
//Переход на поле справа (дата первого посещения)
KEYDOWN (#TAB)
WAITMS (100)
KEYUP (#TAB)
WAITMS (100)
//Копировать дату первого посещения
WAITMS (150)
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#C)
WAITMS (150)
KEYUP (#C)
KEYUP (#CTRL)
// жмяк в гугл
LCLICK($chrome_x, $chrome_y)
WAITMS(1000)
//переход в подвкладку Заключение
LCLICK($conclusion_x, $conclusion_y)
WAITMS(1000)
print("Перешёл в подвкладку Заключение")
//переход через Данные учёта (при Табе 1я ссылка)
KEYDOWN (#TAB)
WAITMS (150)
KEYUP (#TAB)
WAITMS (2000) //!!!
print("Внимание TAB")
//и переход через ссылку Заключение
KEYDOWN (#TAB)
WAITMS (150)
KEYUP (#TAB)
WAITMS (2000)
print("Внимание TAB")
//на Дату первого посещения
KEYDOWN (#TAB)
WAITMS (150)
KEYUP (#TAB)
WAITMS (2000)
print("Внимание TAB, потом вставка и Enter")
//вставка даты первого посещения
KEYDOWN (#CTRL)
WAITMS (150)
KEYDOWN (#V)
WAITMS (150)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (2000) //150
print("Вставил дату первого посещения")
//жмяк отмены
LCLICK($cancel_x, $cancel_y)
WAITMS(1000)
print("Нажал на Отмену")
//переход в Эксель
LCLICK($excel_x, $excel_y)
WAITMS(1000)
//убираем выделение поля
KEYDOWN (#ENTER)
WAITMS (150)
KEYUP (#ENTER)
WAITMS (500)
//переход на ИИН след человека
KEYDOWN (#DOWN) // переведёт строку вниз
WAITMS (100)
KEYUP (#DOWN)
WAITMS (100)
KEYDOWN (#LEFT) // переведёт строку влево 1
WAITMS (100)
KEYUP (#LEFT)
WAITMS (100)
KEYDOWN (#LEFT) // переведёт строку влево 2
WAITMS (100)
KEYUP (#LEFT)
WAITMS (100)
KEYDOWN (#LEFT) // переведёт строку влево 3
WAITMS (100)
KEYUP (#LEFT)
WAITMS (100)
KEYDOWN (#LEFT) // переведёт строку влево 4
WAITMS (100)
KEYUP (#LEFT)
WAITMS (100)
print("Конец итерации")
inc($i)
END_CYC