Автокликер Clickermann :: Форум
Основной раздел => Предложения => Topic started by: ЦИТРИН on October 29, 2012, 01:33:02 AM
-
Мне бы хотелось понять , как можно написать скрипт , который бы в конец файла тхт ( допустим , после процедуры работы по анализу содержимого сайта ) дописывал время в нормальном формате.
Например, 01 ч : 00 мин : 00 сек 25 декабря .
Сейчас переменные ( час, мин, сек ,) идут через запятую , а дату нужно выколупывать аж из формата Unix-систем.
Еще неплохо бы на простом примере показать , как из какого-нибудь допустим новостного сайта скопировать данные и занести их к себе в файл тхт.
-
Фух, задачка жесть конечно. Выкрутился как мог, но сделал:
$arg1 = $_time_t / ((3600 * 24) * (365.24219 / 12))
$arg2 = 12
$Month = ROUND($arg1-(ROUND(($arg1/$arg2)-0.5,0)*$arg2),0)//round(mod($arg1, $arg2), 0)
$arg1 = $_time_t / (3600 * 24)
$arg2 = 365.24219 / 12
$Day = ROUND($arg1-(ROUND(($arg1/$arg2)-0.5,0)*$arg2),0)//round(mod($arg1, $arg2), 0)
print($Day,".",$Month)
Выводит 29.10, т.е. месяц цифрой.
С пользовательскими фун-ями было бы проще конечно.
Пиши если другие даты понадобятся.
-
Ах нет, в этом способе же баг был с кол-вом дней в месяце, так что это фиговый способ на самом деле.
Другой надо искать.
-
Может с этим лучше бы справился плагин?! Думаю для программиста написать плаги с функцию возвращения текущей даты и время было бы несложно.
-
Может с этим лучше бы справился плагин?! Думаю для программиста написать плаги с функцию возвращения текущей даты и время было бы несложно.
Johnny, а почему не ввели системные переменные $_date_day, $_date_month, $_date_year?
-
1. Выводит 29.10, т.е. месяц цифрой.
2. Пиши если другие даты понадобятся.
Спасибо!) Но но юникс пока не совсем ясно. У вас рабочий скрипт или нет?
2) Ок.
Есть такая задача по данным.
Приложить к экрану коробок , отметить длину одной из его сторон ( удобно средняя кнопка мышки ) и посчитать её в сантиметрах с выводом окошка в трей.
-
Язык должен быть самодостаточен для решения возникающих ситуаций, на то он и скриптовой(и полноты по Тьюрингу тут не всегда достаточно).
Но тут средств вполне хватает чтобы это решить.
Задача интересная, сделал инклуд.
Использование:
#include "date.cms"//Подключаем инклуд
print($_date_d,".",$_date_m,".",$_date_y)//Выводим дату
GOSUB(UPDATE_DATE)//Обновление переменных, если вы считаете что мог настать новый день за время выполнения вашего скрипта
print($_date_d,".",$_date_m,".",$_date_y)//Опять выводим
HALT
$_date_d - День
$_date_m - Месяц
$_date_y - Год
Ах да, скрипт не будет работать если вы изобрели машину времени и переместились раньше 1970 года.
Отдельное спасибо Ляпису за идею с обходом отсутствия массивов.
Версия 1.1: http://clickermann.tk/forum/index.php?topic=36.msg929#msg929
-
средств вполне хватает чтобы это решить.
Задача интересная, сделал инклуд.
Отдельное спасибо Ляпису за идею с обходом отсутствия массивов.
Благодарю всех! ) Реально хороший пример для наполнения справки кликера.
Если не затруднит, поясните как между часом, минутой и секундой проставить двоеточие.
У меня пока получаются запятые.
Коряво как-то.
-
print($_date_d,":",$_date_m,":",$_date_y)
А насчет коробка, у тебя что, линейки нет ;D?
А вообще смотришь какое DPI у твоего монитора и делишь длину коробка в пикселях на DPI. Результат в дюймах.
-
Прикольный у тебя инклуд. из будущего. Либо у тебя уже наступило 30 октября ))
-
Хе-хе, у меня уже полночь :)
-
1 print($_date_d,":",$_date_m,":",$_date_y)
2. делишь длину коробка в пикселях на DPI. Результат в дюймах.
1. Спасибо)
Я так понимаю что время с двоеточиями можно отправить в тхт файл через STRWRITELN ?
STRWRITELN (out.txt, ($_date_d,":",$_date_m,":",$_date_y) )
2. Ясно, что как-то можно там из дюймов и ляля...
НО!
Стоит вопрос наполнения справки примерами , которые не только обучают , но ещё и в быту полезны.
Я бы от такой простой линейки ( всегда под рукой + в сантиметрах\дюймах ) не отказался. Можно ведь и площадь вычислить.
-
1.
Да, только вот так: STRWRITELN("out.txt", STRCONCAT($_date_d,":",$_date_m,":",$_date_y))
2.
Вычислить то это не сложно, но оформить как?
-
1.
Да, только вот так: STRWRITELN("out.txt", STRCONCAT($_date_d,":",$_date_m,":",$_date_y))
2.
Вычислить то это не сложно, но оформить как?
1. Спасибо)
Я как раз воевал , а Вы кстати помогли.
2. А что трудного ?
Допустим у нас есть скрипт "линейка".
Путь для удобства он висит в белом окошке редактора слева вверху.
Берем карандаш. Прикладываем к экрану. Метим начало конец средней кнопкой мышки. и получаем размер всплывающий в трее.
Как-то так.
Эта операция разве нуждается в дополнительном оформлении?
-
Как сделать удобный генератор паролей?
Скажем, в текстовом файле у нас имеется перечень сайтов , или аккаунтов , где у хранятся некие действующие логины \ пароли .
Сейчас такое время, что менять пароль лучше регулярно (спецы рекомендуют делать это раз в месяц)
Вероятно программа вполне способна генерировать 6-8 значные пароли и представлять их в виде новой строки , под названием того, или иного сайта, в имеющемся у нас перечне.
-
По отдельности вторая часть не работает.
Взял две части скрипта от Сергея и соединил вместе.
Тишина.
Что не так сделано, для оформления 100% рабочего скрипта?
* 100% рабочий скрипт = взял , скопировал , вставил в редактор и получил результат.
// Время дата
// Author: Сер// New Script
// Author: Anonymous
// Version: 1.0 (29.10.2012)
#name " Время дата"
$arg1 = $_time_t / ((3600 * 24) * (365.24219 / 12))
$arg2 = 12
$Month = ROUND($arg1-(ROUND(($arg1/$arg2)-0.5,0)*$arg2),0)//round(mod($arg1, $arg2), 0)
$arg1 = $_time_t / (3600 * 24)
$arg2 = 365.24219 / 12
$Day = ROUND($arg1-(ROUND(($arg1/$arg2)-0.5,0)*$arg2),0)//round(mod($arg1, $arg2), 0)
print($Day,".",$Month)
#include "date.cms"//Подключаем инклуд
print($_date_d,".",$_date_m,".",$_date_y)//Выводим дату
GOSUB(UPDATE_DATE)//Обновление переменных, если вы считаете что мог настать новый день за время выполнения вашего скрипта
print($_date_d,".",$_date_m,".",$_date_y)//Опять выводим
HALTгей
// Version: 1.0 (29.10.2012)
#name "New Script"
$arg1 = $_time_t / ((3600 * 24) * (365.24219 / 12))
$arg2 = 12
$Month = ROUND($arg1-(ROUND(($arg1/$arg2)-0.5,0)*$arg2),0)//round(mod($arg1, $arg2), 0)
$arg1 = $_time_t / (3600 * 24)
$arg2 = 365.24219 / 12
$Day = ROUND($arg1-(ROUND(($arg1/$arg2)-0.5,0)*$arg2),0)//round(mod($arg1, $arg2), 0)
print($Day,".",$Month)
#include "date.cms"//Подключаем инклуд
print($_date_d,".",$_date_m,".",$_date_y)//Выводим дату
GOSUB(UPDATE_DATE)//Обновление переменных, если вы считаете что мог настать новый день за время выполнения вашего скрипта
print($_date_d,".",$_date_m,".",$_date_y)//Опять выводим
HALT
-
Как сделать удобный генератор паролей?
Скажем, в текстовом файле у нас имеется перечень сайтов , или аккаунтов , где у хранятся некие действующие логины \ пароли .
Сейчас такое время, что менять пароль лучше регулярно (спецы рекомендуют делать это раз в месяц)
Вероятно программа вполне способна генерировать 6-8 значные пароли и представлять их в виде новой строки , под названием того, или иного сайта, в имеющемся у нас перечне.
Я использую для этого KeePass 2
В ней есть все что нужно для хранения паролей, и генератор тоже. Программа русскоязычная нужно только скачать Языковой файл в разделе Translations
http://keepass.info/news/n121004_2.20.1.html
-
По отдельности вторая часть не работает.
Взял две части скрипта от Сергея и соединил вместе.
Тишина.
Что не так сделано, для оформления 100% рабочего скрипта?
* 100% рабочий скрипт = взял , скопировал , вставил в редактор и получил результат.
А чему ты удивляешься? Слепил все тяп ляп! Вот и результат.
Там есть
GOSUB(UPDATE_DATE)
#include "date.cms"//Подключаем инклуд
И куда это все идет?
Не говоря уже о HALTгей ;D ;D ;D ;D
-
KeePass 2
Спасибо)
1. Бесплатные программы такого рода безопасны ли?
Чем скажем будет хуже скрипт в кликере?
2. Юзер данной программы должен видеть примеры использования.
Простой генератор паролей тут вполне уместен.
3. Может кто из наших корифеев придумает красивый скрипт на эту тему.
-
Не говоря уже о HALTгей ;D ;D ;D ;D
Оборжался )
Бывают же описки!!!
Так я не понял по инклуду.
1.Может быть я не туда сохранил файл инклуда?
Сейчас он у меня отдельный файлом лежит в проекте.
2. Может быть я не туда написал какие-то команды?
Что не так?
Как будет выглядеть 100% рабочий скрипт?
-
Хмм...
Так я и не решил ребус с инклудом.
Скачал . Сохранил его в виде файла в проект.
В скрипте делаю в точности то, что указано у Сергея.
#include "date.cms"//Подключаем инклуд
print($_date_d,".",$_date_m,".",$_date_y)//Выводим дату
GOSUB(UPDATE_DATE)//Обновление переменных, если вы считаете что мог настать новый день за время выполнения вашего скрипта
print($_date_d,".",$_date_m,".",$_date_y)//Опять выводим
HALT
Не работает.
Помогите разобраться?
-
Не работает.
Помогите разобраться?
Только что обнаружил, что если после инклуда есть комент то ничего не работает. это баг
Напиши просто
#include "date.cms"
-
От как! Да, комментарии я уже писал в посте и после них не проверял.
-
Только что обнаружил, что если после инклуда есть комент то ничего не работает. это баг
Отлично! Все заработало!
Большое спасибо всем)
-
Выполняю скрипт, в конце которого есть такой финал.
WAITMS(150)
DEFINE($follEWWW,0)
$follEWWW = $follWWW - $count
STRWRITELN("out.txt",STRCONCAT("WWW:"," заказ-",$follWWW," факт-",$count," разница-",$follEWWW))
WAITMS(RND(100,150))
DEFINE($follEDDD,0)
$follEDDD = $follDDD - $count22
STRWRITELN("out.txt",STRCONCAT("DDD:"," заказ-",$follDDD," факт-",$count22," разница-",$follEDDD))
WAITMS(RND(100,150))
STRWRITELN("out.txt", "___________________________________")
WAITMS(150)
/////////////////////////////////////////////////////////////
LCLICK(700, 0 )
print("cделано")
TRAYSAY("WWW-", $follEWWW, "__DDD-", $follEDDD)
halt
Как сделать , чтобы во всплывающем окне был виден результат операции Существующий вариант скрипта приводит лишь к тому , что всплывает надпись "WWW-".
прим.ред: оформляйте код с подсветкой!
-
через функцию strconcat которую ты использовал выше.
traysay не относится к процедурам, которые принимают неограниченное количество параметров
-
1. через функцию strconcat
2. прим.ред: оформляйте код с подсветкой!
Спасибо. Получилось.
Рабочий финал скрипта теперь выглядит так
...
HINTPOPUP (STRWRITELN("WWW-", $follEWWW, "__DDD-", $follEDDD))
HALT
2. Как сделать оформление подсветки кода?
-
в правом верхнем углу пишутся новости касательно этого форума. заглядывайте в тот угол изредка.
-
Jhonny, Благодарим за код c подсветкой по кликеру ))
-
Посоветуйте кто знает!?
Допустим есть некий текстовый файл из 120-300 строк.
Он лежит у нас в проекте и называется 1.тхт
Как лучше написать скрипт , если требуется всегда копировать ( и вставлять в некую стороннюю программу) первую строку, но с последующим её удалением , чтобы нижележащие сроки при этом становились первыми?
Нужно , чтобы с каждым циклом в файле 1.тхт строк становилось все меньше.
-
К сожалению пока кликер только умеет полностью стирать файл
STRWRITELN ("file", "str", [rewrite])
А в 4.5 версии даже стирать неумел
Остается только наращивать переменную считывая все строки
DEFINE($count, 1)
$a = StrReadln("input.txt", $count)
INC ($count, 1)
-
Благодарю)
-
В сетевых текстах все чаще появляются слова, в которых сделана замена русских букв на похожие латинские.
Причина не совсем понятна , но допускаю, что таким образом достигается т.н. "уникальность текста".
Однако, возникает проблема.
Дело в том, что орфографию таких корявых текстов проверять оч трудно.
Задача.
Есть сугубо русский текст.
В словах могут быть использованы , как английские , так и русские символы, которые у нас "совпадают" - H, M, T, A, B, C, X и т.д.(в шапке полный набор)
(Русские символы занимают по 2 байта, английские - 1.)
Если не трудно, подскажите прототип скрипта (Кликерман), по замене вышеупомянутых лат. на русс.
-
Задача.
Есть сугубо русский текст.
В словах могут быть использованы , как английские , так и русские символы, которые у нас "совпадают" - H, M, T, A, B, C, X и т.д.(в шапке полный набор)
(Русские символы занимают по 2 байта, английские - 1.)
Если не трудно, подскажите прототип скрипта (Кликерман), по замене вышеупомянутых лат. на русс.
Происходит это скорее всего при распознавании текста с картинки.
Такую задачу довольно легко можно решить с помощью программы Shtirlitz IV (https://dl.dropbox.com/u/74475554/Shtirlitz_IV.rar)
В ней легко можно создать схему транслитерации.
Для этого, зайди в "Параметры" -> "Свойства" -> "Схемы транслитерации"
Пишешь там к примеру английскую О через равно русскую О (то есть что на что меняется)
Писать можно так
o=о
e=е
c=с
или так
o=о e=е c=с
или так
oec
оес
в общем по любому.
Как работать.
Копируешь текст в буфер, В штирлице жмешь Файл -> Буфер обмена. Далее WIN WIN->LAT и выбираешь свою схему.
Текст преобразуется.
PS: Кстати прога старая, дальше XP вряд ли будет работать.
-
Благодарю)
Программа вопрос решила.
-
Новая версия скрипта возвращения даты для Clickermann v.4.7 Second Edition
- Учтен фикс бага функции ROUND.
- Добавлено явное преобразование из строки в число в массиве дней месяцев.
- Все приведено к общему именному пространству.
Использовать так же
-
Спасибо)
п.с.
Кстати о "спасибо".
Видел на других форумах кнопку "спасибо".
Можно ли у нас тут такое прикрутить?
-
Подскажите примерную схему создания скрипта .
Есть экран браузерной игры с разрушенными строениями. Этих строений может быть 50-100 шт.
Нужно опросить экран и запомнить все точки расположения этих строений.
Число строений и места их расположения могут быть различными.
-
Вот есть такой скрипт. Делит зону поиска на квадраты и анализирует их по отдельности
Только нужно еще прикрутить запись найденных координат в файл
LOGCLEAR
// область поиска
$x1 = 19 // верхний левый угол
$y1 = 94
$x2 = 741 // нижний правый угол
$y2 = 693
// цвет
$color = 255
// отступ
$size = 10
// задержка "мс" минимум 1
$wait = 1
================================
getscreen
if_pixel_in($x1, $y1, $x2, $y2, $color)
$count = 0
// move($_return1, $_return2)
LOGWRITE("X: ", $_return1, " ","Y: ", $_return2)
waitms($wait)
WHILE($var = 0)
$sY2 = $_return2 + $size
$sY1 = $_return2
$var2 = 0
WHILE($var2 = 0)
if_pixel_in($_return1 + $size, $sY1, $x2, $sY2, $color)
// move($_return1, $_return2)
LOGWRITE("X: ", $_return1, " ","Y: ", $_return2)
waitms($wait)
INC($count, 1)
Else
$var2 = 1
end_if
END_CYC
if_pixel_in($x1, $_return2 + $size, $x2, $y2, $color)
// move($_return1, $_return2)
LOGWRITE("X: ", $_return1, " ","Y: ", $_return2)
waitms($wait)
Else
$var = 1
end_if
INC($count, 1)
END_CYC
end_if
LOGWRITE("Количество: ", $count)
-
Спасибо)
Поясните, если не трудно.
1. С какой целью экран делится на квадраты?
Насколько я понял из бесед на форуме, функция if_pixel_in , получив getscreen в память, обегает экран слева направо и сверху вниз.
2. Если найденные координаты предполагается использовать в этом же скрипте ( скажем во 2, или 3 его части), требуется ли отдельная запись в файл найденных параметров?
Можно ли как-то генерировать новые переменные, по мере нахождения объектов , а потом последовательно извлекать их из памяти ?
-
1. Сделай простой пример. Нарисуй в паинте 3-4 кранные точки случайным образом. Настрой область поиска и цвет этих точек. А вот теперь важный параметр, "отступ". Отступ должен быть размером примерно с объект поиска. Например искомый объект имеет размер 30х40 пикс, значит отступ должен быть 40 пикс. Итак запусти скрипт и в логе, если все правильно настроено, запишется количество точек и их координаты.
2. К сожалению пока в кликермане нет массивов, поэтому координаты нужно записывать в файл, благо теперь функций для работы с текстом в файле хватает.
За место LOGWRITE("X: ", $_return1, " ","Y: ", $_return2) пропысываются нужные функции записи в файл
Хотя можно сразу производить действия над найденным объектом.
-
1. Сделай простой пример. Нарисуй в паинте
2.Хотя можно сразу производить действия над найденным объектом.
1. Благодарю за пояснения)
Все доступно и понятно .
2. В игре каждый объект ремонтируется 3-5 минут. Хотел сначала опросить весь экран и потом , через всплывающее окно периодически запускать вторую часть скрипта, занимаясь другими делами.
Хотя , если запускать на всю ночь, то некритично разумеется.
-
Подскажите примерную схему создания скрипта .
Есть экран браузерной игры с разрушенными строениями. Этих строений может быть 50-100 шт.
звучит интересно. что за игра?
-
что за игра?
thesettlersonline.ru
-
По просьбе , написал типовые скриптики , для облегчения входа в различные социальные сети.
Вроде бы все работает.
Скорее всего, это можно бы поместить и в типовые алгоритмы.
Но хотелось, чтобы предварительно корифеи посоветовали.
Можно ли убрать ненужное, или что-то откорректировать?.
// Скрипт для автоматического открытия браузера Хром и авторизованного перехода на страницу "в контакте"
// Author: ЦИТРИН
// Version: 1.0 (19.12.2012)
#name "vk.com"
WAITMS (1024)
ss:
LCLICK(0,400) // что-то типа "в фокус"
WAITMS (150)
$HWnd = WNDFIND ("Google Chrome") // ищем, есть ли открытый хром
WAITMS (150)
if ($HWnd > 0) // если уже есть открытый хром то
WNDSTATE (WNDFIND("Google Chrome"), 1) // если вдруг окно хрома было свернуто, - разворачиваем
waitms(750)
WNDPOS (WNDFIND("Google Chrome"), 0,0 ) // если вдруг окно было не на месте, - ставим окно в начальную позицию
waitms(750)
RCLICK(8,7) // раздвигаем окно на максимум ( 1 шаг )
WAITMS (550)
LCLICK(24,109) // раздвигаем окно на максимум (2 шаг)
WAITMS (350)
LCLICK(24,109) // дубль для верности
WAITMS (350)
$HWnd2 = WNDFIND ("Новая вкладка - Google Chrome") // ищем новую вкладку
WAITMS (750)
if ($HWnd2 > 0) // если обнаружилась, что уже есть чистая новая вкладка, то переход к ff
WAITMS (350)
GOTO(ff)
END_IF
KEYDOWN (#CTRL) // разворачиваем новую вкладку , если не нашли
WAITMS (50)
KEYDOWN (#T)
WAITMS (50)
KEYUP (#T)
KEYUP (#CTRL)
ELSE
WAITMS (150)
EXECUTE("chrome.exe") // открывем хром браузер, если был не открыт
WAITMS(2500)
GOTO(ss) // идем в начало и проверяем браузер на предмет наличия чистой вкладки
END_IF
ff:
WAITMS(1500)
LCLICK(140,42) // активация
waitms(rnd(550,750))
$h = hget(140,42) // получаем HWND окна
SETKBLAYOUT($h, 1033) // устанавливаем английскую раскладку для окон
//..............................................................................
LCLICK(140,42) // активация адресной строки хром
waitms(rnd(150,250))
//
///////////////////////////////
//
GOSUB(sub_A_D)
//
///////////////////////////////
//
LCLICK(140,42) // активация
waitms(rnd(550,750))
//
///////////////////////////////
//
TOCLIP(StrReadln ("1234.txt", 1 )) // результат 1 строка из файла 1234.тхт ( для ВК http://vk.com/ )
waitms(rnd(150,250))
//
///////////////////////////////
//
LCLICK(140,42) // активация
waitms(rnd(550,750))
//
///////////////////////////////
//
GOSUB (sub_CO_V) // введение адреса сайта (1 строка из файла 1234.тхт )
waitms(rnd(550,750))
//
//////////////////
//
GOSUB(sub_ENTER) // переход и ожидание открытия сайта
waitms(rnd(3550,4750))
//
///////////////////////////////
//
LCLICK(26,394) //
waitms(rnd(350,450))
//..............................................................................
LCLICK(248,133) // b
waitms(rnd(150,250))
GOSUB(sub_A_D)
LCLICK(248,133) // b
waitms(rnd(350,450))
TOCLIP(StrReadln ("1234.txt", 2)) // результат 2 строка из файла 1234тхт ( логин ffotto99@mail.ru )
waitms(rnd(650,750))
GOSUB (sub_CO_V) // вставляем логин из (2 строки файла 1234тхт )
waitms(rnd(650,750))
//
///////////////////////////////
//
LCLICK(246,177) // c
waitms(rnd(150,250))
GOSUB(sub_A_D)
LCLICK(246,177) // c
waitms(rnd(150,250))
TOCLIP(StrReadln ("1234.txt", 3)) // результат 3 строка из файла 1234тхт ( пароль 7395solffg )
waitms(rnd(450,550))
GOSUB (sub_CO_V) // вставляем пароль из (3 строки файла 1234тхт )
GOSUB(sub_ENTER)
//..............................................................................
//..............................................................................
//..............................................................................
SUB (sub_CO_V)
KEYDOWN(#CTRL)
waitms(rnd(150,250))
KEYDOWN(#V)
waitms(rnd(150,250))
KEYUP(#V)
waitms(rnd(150,250))
KEYUP(#CTRL)
waitms(rnd(2150,2250))
END_SUB
//..............................................................................
SUB (sub_ENTER)
KEYDOWN(#ENTER)
waitms(rnd(150,250))
KEYUP(#ENTER)
waitms(rnd(150,250))
END_SUB
//..............................................................................
SUB(sub_A_D)
KEYDOWN(#CTRL)
waitms(rnd(150,250))
KEYDOWN(#A)
waitms(rnd(150,250))
KEYUP(#A)
waitms(rnd(150,250))
KEYUP(#CTRL)
waitms(rnd(150,250))
KEYPRESS(#DELETE)
waitms(rnd(150,250))
END_SUB
halt // for single run
Ниже добавил вложение.
Папку распаковать.
Записать папку в директорию проектов кликермана.
Поменять логин и пароль в файле 1234.тхт на свои
п.с.
Координаты окон для логина и пароля будут точными только для сайта Вконтакте , открытого в браузере Хром.
-
Пытался сделать так, чтобы было видно сколько времени осталось.
Получилось как-то так
Наверно слишком много лишнего)
Помогите упростить скрипт, если это возможно
В конце скрипта курсор бежит по линии системного трея и снимает шильдик попапа, потому
что он мешает дальнейшему ходу задачи.
SUB(TIME_60)
TRAYSAY(" пауза 60 сек)
WAIT(30)
WAITMS(1000)
TRAYSAY("конец 30")
WAITMS(1000)
TRAYSAY("конец 29")
WAITMS(1000)
TRAYSAY("конец 28")
WAITMS(1000)
TRAYSAY("конец 27")
WAITMS(1000)
TRAYSAY("конец 26")
WAITMS(1000)
TRAYSAY("конец 25")
WAITMS(1000)
TRAYSAY("конец 24 ")
WAITMS(1000)
TRAYSAY("конец 23")
WAITMS(1000)
TRAYSAY("конец 22 ")
WAITMS(1000)
TRAYSAY("конец 21")
WAITMS(1000)
TRAYSAY("конец 20")
WAITMS(1000)
TRAYSAY("конец 19 ")
WAITMS(1000)
TRAYSAY("конец 18")
WAITMS(1000)
TRAYSAY("конец 17")
WAITMS(1000)
TRAYSAY("конец 16")
WAITMS(1000)
TRAYSAY("конец 15")
WAITMS(1000)
TRAYSAY("конец 14")
WAITMS(1000)
TRAYSAY("конец 13")
WAITMS(1000)
TRAYSAY("конец 12 ")
WAITMS(1000)
TRAYSAY("конец 11")
WAITMS(1000)
TRAYSAY("конец 10 ")
WAITMS(1000)
TRAYSAY("конец 9 ")
WAITMS(1000)
TRAYSAY("конец 8")
WAITMS(1000)
TRAYSAY("конец 7")
WAITMS(1000)
TRAYSAY("конец 6")
WAITMS(1000)
TRAYSAY("5")
WAITMS(1000)
TRAYSAY("4")
WAITMS(1000)
TRAYSAY("3")
LCLICK(1030,737) // убираем попап
WAITMS(100)
LCLICK(1035,737) // убираем попап
WAITMS(100)
LCLICK(1040,737) // убираем попап
WAITMS(100)
LCLICK(1045,737) // убираем попап
WAITMS(100)
LCLICK(1050,737) // убираем попап
WAITMS(100)
LCLICK(1055,737) // убираем попап
WAITMS(100)
LCLICK(1060,737) // убираем попап
WAITMS(100)
LCLICK(1065,737) // убираем попап
WAITMS(100)
LCLICK(1070,737) // убираем попап
WAITMS(100)
LCLICK(1075,737) // убираем попап
TRAYSAY("2")
WAITMS(100)
LCLICK(1080,737) // убираем попап
WAITMS(100)
LCLICK(1085,737) // убираем попап
WAITMS(100)
LCLICK(1090,737) // убираем попап
WAITMS(100)
LCLICK(1095,737) // убираем попап
WAITMS(100)
LCLICK(1100,737) // убираем попап
WAITMS(100)
LCLICK(1105,737) // убираем попап
WAITMS(100)
LCLICK(1110,737) // убираем попап
WAITMS(100)
LCLICK(1115,737) // убираем попап
WAITMS(100)
LCLICK(1120,737) // убираем попап
WAITMS(100)
LCLICK(1125,737) // убираем попап
WAITMS(100)
LCLICK(1130,737) // убираем попап
WAITMS(100)
LCLICK(1135,737) // убираем попап
WAITMS(100)
LCLICK(1140,737) // убираем попап
WAITMS(100)
LCLICK(1145,737) // убираем попап
WAITMS(100)
LCLICK(1150,737) // убираем попап
WAITMS(100)
LCLICK(1155,737) // убираем попап
WAITMS(100)
LCLICK(1160,737) // убираем попап
WAITMS(100)
LCLICK(1165,737) // убираем попап
WAITMS(100)
LCLICK(0,400) // в фокус
WAITMS(200)
LCLICK(0,400) // в фокус
WAITMS(2000)
END_SUB
//
-
Добавить в вышеприведенный код цикл - и будет все понятней :) Писал на быструю ногу :) так что могу где и ошибиться :)
SUB(TIME_60)
TRAYSAY(" пауза 60 сек)
WAIT(30)
FOR($var, $var < 31)
$TimeRest=30-$var
TRAYSAY(STRCONCAT("конец ", $TimeRest))
WAITM(1)
END_CYC
FOR($var, $var < 31)
LCLICK(1030+$var*5,737) // убираем попап
WAITMS(100)
END_CYC
CLICK(0,400) // в фокус
WAITMS(200)
LCLICK(0,400) // в фокус
WAITMS(2000)
END_SUB
-
Команда TRAYSAY устарела за место неё следует писать HINTPOPUP. Чтобы скрыть попап достаточно написать HINTPOPUP("")
SUB(TIME_60)
HINTPOPUP("Пауза 60 сек")
WAIT(30)
FOR($var, $var < 30)
$TimeRest = 30 - $var
HINTPOPUP(STRCONCAT("Конец ", $TimeRest))
WAIT(1)
END_CYC
HINTPOPUP("") // убираем попап
LCLICK(0,400) // в фокус
WAITMS(200)
LCLICK(0,400) // в фокус
WAITMS(2000)
END_SUB
-
Во, во ЦИТРИН, это то о чём я говорил. Из 121 "линейных" строк без всякой логики, получилось 14.
Вот таким макаром твои 30-и кБ скрипты превратятся в 3-5 кБ
-
Всем больше спасибо)
Если не трудно , дайте более развернутые пояснения
FOR($var, $var < 30) зачем это и как оно работает?
Для чего тут умножение LCLICK(1030+$var*5,737) ?
Нужно ли переменную $var как то объявлять через DEFINE в самом начале?
На всякий случай все переменные провожу через DEFINE .
Может какие-то не нужно?
-
DEFINE нужно только, если в начале скрипта какой то переменной нужно присвоить начальное значение, например 1, а в последующих проходах скрипта уже не менять значение. Последней версии кликера DEFINE в принципе не нужно, Переменные пишут либо непосредственно, либо они объявляются по ходу скрипта в выражениях. Это большой плюс по сравнению с пилотом, где объявлять нужно обязательно.
Цикл FOR повторит сообщения в трей 30 раз с ожиданием в секунду. $var объявляется и обнуляется в начале цикла, и наращивается с каждым циклом.
В скрипте HolyKirka есть ошибки.
Зачем тебе вообще вот так кликать?
WAITMS(100)
LCLICK(1065,737) // убираем попап
WAITMS(100)
LCLICK(1070,737) // убираем попап
WAITMS(100)
LCLICK(1075,737) // убираем попап
Что не так с твоим попапом?
-
Спасибо за разъяснения.
Про мой попап.
Он почему-то поднимает внизу планку системного трея . Из-за этого скрипт не может оперировать в самой нижней части экрана.
Можно бы по нему просто кликнуть, но он зараза появляется каждый раз в новом месте, в зависимости от числа прог, висящих с системном трее. Они каждый раз разные, а проверять и закрывать, - не всегда помнишь.
Ну и решил просто нашарить , где это попап висит, тупо вслепую тыкая курсором по одной линии.
Простенько, но помогало )
Я так понимаю, что если вместо WAIT(1) написать WAIT(2), а вместо FOR($var, $var < 30)
$TimeRest = 30 - $var
написать FOR($var, $var < 15)
$TimeRest = 30 - $var
то сообщения попап будут через 2 секунды.
Верно?
-
Он почему-то поднимает внизу планку системного трея...
Ну это какое то нарушение уже...
-
Он почему-то поднимает внизу планку системного трея...
Ну это какое то нарушение уже...
Пардон )
Спутал. Речь идет о панели задач, а не о системном трее.
Панель у меня в нормальном состоянии скрыта.
После того, как срабатывает попап из иконки кликермана , панель поднимается и висит до его закрытия . Её можно закрыть кликом.
-
Для чего тут умножение LCLICK(1030+$var*5,737) ?
Ну я старался полностью идентично Ваш скрипт переписать :) Вы же там куда то с шагом в 5 точек тыкали мышкой :) Да и ошибок у меня там не так много: одна при копи-пасте (TRAYSAY(" пауза 60 сек)), а вторая цикл надо до 30 ибо он с нуля отсчитывает ;)
-
Для чего тут умножение LCLICK(1030+$var*5,737) ?
там куда то с шагом в 5 точек тыкали мышкой :)
Непонятно откуда берется $var?
Системная переменная, или можно её делать любой?
Почему $var, а не скажем $сar?
-
Для чего тут умножение LCLICK(1030+$var*5,737) ?
там куда то с шагом в 5 точек тыкали мышкой :)
Непонятно откуда берется $var?
Системная переменная, или можно её делать любой?
Почему $var, а не скажем $сar?
Все системные переменные приведены в таблице в справке и начинаются они с $_
var это сокращение от "variable" то есть переменная. Конечно имя может быть любым.
эта переменная самонаращивается в цикле FOR
-
2 ЦИТРИН
Думаю Вам, да и не только, будет полезно прочитать про циклы. Хотябы тут: http://pas1.ru/cycles Появится понимание цикла вообще. После этого надо справку к Кликкерману почитать, раздел про циклы. Циклы - великая весчь :)
-
2 ЦИТРИН
Циклы - великая весчь :)
Спасибо)
Начал осваивать но тут слабость компа наложилась на слабую сеть.
Циклы там начали давать странные спорадические сбои и ошибки.
-
Зравствуйте.
Подскажите как можно реализовать рандомный клик мышью в пределах небольшой области.
-
Зравствуйте.
Подскажите как можно реализовать рандомный клик мышью в пределах небольшой области.
LCLICK(RND(100,200),RND(100,200))
Рандомный клик в области 100,100 - 200,200
-
Есть такая задача по данным.
Приложить к экрану коробок , отметить длину одной из его сторон ( удобно средняя кнопка мышки ) и посчитать её в сантиметрах с выводом окошка в трей.
$mm = 375 // Ширина монитора (мм)
$kmm = $mm / ($_xmax + 1)
WHILE(iskeydown(4) = 0)
WAITMS(35)
IF(iskeydown (4) = 1)
$x1 = $_xmouse
$y1 = $_ymouse
END_IF
END_CYC
WHILE(iskeydown(4) = 1)
WAITMS(35)
IF(iskeydown (4) = 0)
$x2 = $_xmouse
$y2 = $_ymouse
END_IF
END_CYC
$dist = DIST ($x1, $y1, $x2, $y2)
$lmm = $dist * $kmm
HINTPOPUP ($lmm, "Длина (мм)")
-
Зравствуйте.
Подскажите как можно реализовать рандомный клик мышью в пределах небольшой области.
копайте в сторону rnd(x) rnd(y) или rndfrom
-
Спасибо Автору! Вы гений!
Хочу задать вопрос:
Как прочитать с блокнота логин;пароль (написаны в столбик), и вставить в соответствующие поля в браузере, а затем удалить эту строку?
И как прочитать из блокнота рандомную строку и вставить в браузер?
Большое спасибо за ответ, и огромное спасибо за труды!
сохранить в файл и копировать в буфер построчно
STRREADLN ("file", strn) // - строковая функция; считывает строку из файла
-
Хочу задать вопрос:
Как прочитать с блокнота логин;пароль (написаны в столбик), и вставить в соответствующие поля в браузере, а затем удалить эту строку?
Создаешь рядом со скриптом файл "LogPass.txt" и в него записываешь строки по образцу
Тест1@mail.ru:111111111
Тест2@mail.ru:абвгд
Тест3@mail.ru:тестТестТЕСТ
Сам скрипт:
IF(TFCOUNT("LogPass.txt") > $count)
INC($count,1)
ELSE
$count = 1
END_IF
$str = TFREAD ("LogPass.txt", $count)
$log = STRCUT2 ($str, 1, STRPOS ($str, ":")-1)
$pass = STRCUT2 ($str, STRPOS ($str, ":")+1, STRLEN ($str))
LCLICK(10,10) // клик по полю логина
WAITMS (50)
TOCLIP($log) // скопировать в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставить
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по полю пароля
WAITMS (50)
TOCLIP($pass)
WAITMS (50)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по "Вход"
WAITMS(100)
каждый новый проход скрипт будет считывать новую строку и так по кругу
И как прочитать из блокнота рандомную строку и вставить в браузер?
Записываешь строки в файл "Text.txt"
$str = TFREAD ("Text.txt", RND(1,TFCOUNT("Text.txt")))
LCLICK(10,10) // клик по ввода
WAITMS (50)
TOCLIP($str) // скопировать в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставить
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
-
LCLICK(10,10) // клик по блакноту
TOCLIP(RND(1,28)) // копируем случайное число в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставляем
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
-
кавычки там лишние. Функция поиска есть в самом браузере, нужно только заставить кликер ей воспользоваться.
-
Вот пытаюсь разобрать, что за чем привязывается:))) что то никак, уже мозг сломал :)
как сделать так:
1)считать из LogPass.txt логин:пасворд
2)потом считать тот же самый логин:пасворд
3)затем удалить эту строку из LogPass.txt и записать ее в Ready.txt
и по кругу чтоб бралось, удалялось и записывалось в столбик в Ready.txt
IF(TFCOUNT("LogPass.txt") = 0)
HALT
END_IF
$str = TFREAD ("LogPass.txt", 1)
$log = STRCUT2 ($str, 1, STRPOS ($str, ":")-1)
$pass = STRCUT2 ($str, STRPOS ($str, ":")+1, STRLEN ($str))
TFWRITE ("Ready.txt", $str)
TFDELETE ("LogPass.txt", 1)
LCLICK(10,10) // клик по полю логина
WAITMS (50)
TOCLIP($log) // скопировать в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставить
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по полю пароля
WAITMS (50)
TOCLIP($pass)
WAITMS (50)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по "Вход"
WAITMS(100)
-
Если в поле проводника вставить полный путь к файлу и нажать открыть то откроется этот файл.
c:\Downloads\картинка.jpg
Таким образом если сделать список таких картинок можно рандомно вставлять путь в проводник и загружать картинки, причем папка значения не имеет.
-
Если я правильно понял задачу(первый раз кликаем 1 раз,второй-2 раза,третий-3 и т.д.), то решить подобную задачу можно с помощью цикла, вложенного в другой цикл, таким образом:
$qwerty=10 //допустим надо кликать 10 циклов
FOR($x=1, $x < $qwerty+1) // в переменной Х считаем циклы
LOGWRITE ("выполняем цикл ",$x," раз")
FOR($y=1, $y ! $x+1) // в переменной Y выполняем нужное действие Х раз
KEYDOWN(#DOWN) //зажали стрелку вниз
WAITMS(100) // впринципе,необязательно...Но можно и вставить некоторую задержку
KEYUP(#DOWN) //отпустили стрелку вниз
LOGWRITE ("кликаем ",$y,"-й раз")
END_CYC
END_CYC
halt // for single run
Запись в лог совершенно не нужен,но если ты вставишь этот код в кликер,закомментируешь кейап и кейдаун-увидишь в логе как оно работает
-
Вариант по короче
INC($b,1)
IF($b > 10)
HALT // стоп или другие действия
END_IF
FOR($a=0,$a<$b)
KEYPRESS(#DOWN)
WAITMS(50)
END_CYC
-
Вариант по короче
Вряд-ли у него в коде только это. Иначе зачем что-то считать вообще. Нажать вниз 55 раз и всё.
-
Вот поэтому такой вариант, другие действия могут быть выше или ниже, все будет работать.
-
как то я не верно написал наверное?
Скобки лишние.
$str = TFREAD ("LogPass.txt", 1)
strseparate($str, ";", $arr) // разделитель
$log = $arr[0]
$pasw = $arr[1]
$sex = $arr[2]
$date = $arr[3]
$month = $arr[4]
$year = $arr[5]
-
Да, правильно, массив то не обнуляется и в него записываются новые данные на 6 и далее строки а ты читаешь только первые.
Можно вот так написать
strseparate(TFREAD ("LogPass.txt", 1), ";", $arr) // разделитель
$log = $arr[0]
$pasw = $arr[1]
$sex = $arr[2]
$date = $arr[3]
$month = $arr[4]
$year = $arr[5]
UNDEFINE($arr) // удаляем массив
-
Здравствуйте, интересует, возможно ли хоть как-то сделать так.
Вот у меня есть строки, в каждой есть определенный ряд цифр, мне необходимо, чтобы он копировал этот ряд цифр на каждой строке, а дальше выполнял определенные действия (это я смог сделать, копирует он у меня по двойному клику по месту в строке, то есть выделяет все цифры в строке, а дальше копирует и делает, что надо). Однако периодически на этих строках перед рядом цифр стоит знак "-", этот знак он у меня не выделяет, но мне необходимо, чтобы не просто его выделял, а еще и понимал, что выделяет цифры с этим знаком и выполнял иную последовательность действий.
-
Здравствуйте, интересует, возможно ли хоть как-то сделать так.
Вот у меня есть строки, в каждой есть определенный ряд цифр, мне необходимо, чтобы он копировал этот ряд цифр на каждой строке, а дальше выполнял определенные действия (это я смог сделать, копирует он у меня по двойному клику по месту в строке, то есть выделяет все цифры в строке, а дальше копирует и делает, что надо). Однако периодически на этих строках перед рядом цифр стоит знак "-", этот знак он у меня не выделяет, но мне необходимо, чтобы не просто его выделял, а еще и понимал, что выделяет цифры с этим знаком и выполнял иную последовательность действий.
Приветствую.
Чуть по понятнее... Что выделяем, где выделяем. Весь мозг сломал.
Но очевидно, что выделять нужно иначе, не двойным кликом.
-
Ну допустим, есть строки вида:
profile id: 87817878_0929942
profile id: -87817878_0922429
profile id: 87817878_0922429
profile id: 87817878_0922141
Я настроил автокликер так, чтобы он выделял с каждой строки цифры, копировал их, дальше переходил на другую вкладку, там вставлял их в окошко и выполнял еще кое-какие действия. Выделяет он цифры по двойному клику. Однако если перед цифрами стоит знак "-", то выделять он их будет без этого знака, однако мне нужно, чтобы он выделял с ним. Также если цифры идут с этим знаком, то мне нужно, чтобы он выполнял немного другую последовательность действий.
-
Вот у меня есть строки...
дальше переходил на другую вкладку...
Ну вот уже и вкладки появились. Сразу бы сказал, что на странице в браузере, а то "есть строки" понятие растяжимое.
Я сразу подумал в файле.
Ну очевидно же что нужно выделять не двойным кликом...
1) Вариант. В лоб.
Ищем id:
LDOWN($_return1+ширина,$_return2)
до: ищем правее _
LUP($_return1-1,$_return2)
и похожее для второй группы цифр.
2) Вариант.
Делал всё как раньше, Но в начале числа ищешь минус. Если минус есть
$число = 0 - $число и одна последовательность действий
ИНАЧЕ другая последовательность.
-
Чтобы выделить все нужно
LDOWN(10,10) // нажать в начале строки
WAITMS(50)
LUP(100,10) // отпустить в конце
как определить наличие минуса
IF(STRPOS(FROMCLIP(), "-") > 0)
// случай если есть минус
END_IF
-
Спасибо большое, такой способ выделения оказался намного лучше, благо строки всегда на одно и то же количество пикселей ниже друг друга, поэтому просто слегка изменяю цифры оси Y. И я вообще не понимаю, что да как с этим $_return работает. Я понимаю, что, наверное, это должно быть очевидно, но я не понимаю, как искать ID, поэтому просто пользуюсь ldown и up и сам указываю, в каких координатах выполнять эти действия.
-
Еще раз здравствуйте. Появился новый вопрос.
У меня есть таблица, в ней миллион строк, на каждой строке ссылка. Мне необходимо, чтобы он брал каждую ссылку (с этим я благо справился), дальше заходил в браузер (у меня просто на левой части браузер с открытой вкладкой, а на правой - таблица), вбивал ссылку в поле, дальше по ссылке выводится информация, буквально несколько строк, главное, там будет написано следующее "статус ссылки: ок" или "статус ссылки: битая". Мне необходимо, чтобы он, допустим, начинал искать на этой странице слово "битая". И если он находит слово "битая", то тогда необходимо, чтобы он эту ссылку вставлял в текстовый документ.
Я не понимаю, как можно написать эту зависимость от того, есть ли слово "битая" или нет, может ли он вообще искать слова на странице? Или, скажем, как-то использовать инструмент по поиску слов на странице в браузере?.
-
Небольшой апдейт предыдущей просьбы. Работаю в браузере google chrome. И соответственно вот он забил ссылку, появилась информация о ней, дальше сочетанием клавиш ctrl+F начинает искать слово "битая". Соответственно, если слова нет, то будет написано "0 из 0" на красном фоне. Соответственно мне необходимо сделать так, чтобы он искал этот цвет в заданной области и тогда в зависимости от этого копировал ссылку в блокнот. Я правильно понимаю, что это самый краткий путь?
-
Верной дорогой идешь.
GETSCREEN
IF_PIXEL_IN(300,300, 500,500, 255)
ELSE
// красный отсутствует значит копируем текст
END_IF
-
Не нужны эти манипуляции с вставкой адреса. Сразу вызывай хром и передавай ему ссылку. Откроется на новой вкладке.
$url = "" // присваиваешь свою ссылку
EXECUTE("chrome.exe", $url)
-
Только у меня там получается не красный цвет, а если верить pixie, получается "255, 102, 102", я попробовал перевести в long color chart (получилось 6711039), однако почему-то он все равно не ищет. То есть если даже цвет есть, он все равно записывает в блокнот.
IF_PIXEL_IN (816, 85, 850, 103, 6711039)
LCLICK(919,97) // закрывает поиск
else
LCLICK(919,97) // закрывает поиск
LCLICK(336,1056) // 14669224
keypress (13)
keydown (17)
keydown (86)
keyup (17)
keyup (86)
LCLICK(279,1056) // 15195345
END_IF
-
Кликер сам показывает десятиричный код цвета! Только наведи мышь, или снимай код цвета со скриншота.
LCLICK(336,1056) // 14669224 - вот это и есть код цвета по координате 336,1056.
-
Все, спасибо, цвет я все же правильно посчитал, надо было побольше waitms вставить в код, теперь он хоть и делает одну такую операцию за 3 секунды где-то, зато делает правильно.
-
Зачем сохряняешь ссылку руками? Кликер сам умеет писать в файл
TFWRITE("битые.txt", $url)
Запишет содержимое переменной $url в битые.txt новой, последней строкой.
-
Потому что он копирует ссылку сам и сам же ее вставляет. Или я как-то могу с помощью команда TFwrite записывать то, что в буфере обмена в данный момент?
-
Потому что он копирует ссылку сам и сам же ее вставляет. Или я как-то могу с помощью команда TFwrite записывать то, что в буфере обмена в данный момент?
Конечно можешь
TFWRITE("битые.txt", FROMCLIP())
Но зачем тебе вообще буфер?
-
Спасибо еще раз.
Ну у меня как устроен скрипт: нажал он на строку в таблице, скопировал ссылку, зашел в браузер, посмотрел, битая или нет. Если битая, то вставляет эту ссылку в файлик в блокноте. Дальше открывает excel, нажимает стрелку вниз, чтобы перейти на строку ниже и опять копирует, и дальше точно также.
-
[offtop]
а специализарованные инструменты для проверки ссылок не подойдут? AM-Deadlink (http://www.aignes.com/deadlink.htm) например
[/offtop]
-
Нет, он называет битыми те ссылки, которые не подходят по различным параметрам. То есть ссылка может быть рабочая, но по каким-то причинам не подходит для работы.
-
Мне необходимо, чтобы он, допустим, начинал искать на этой странице слово "битая". И если он находит слово "битая", то тогда необходимо, чтобы он эту ссылку вставлял в текстовый документ. ...
А чем не устраивает обычный инструмент поиска битых ссылок?
Например , Portable Bookmarks неплохо ссылки проверяет.
http://rutracker.org/forum/viewtopic.php?t=4271901
-
Хочу задать вопрос:
Как прочитать с блокнота логин;пароль (написаны в столбик), и вставить в соответствующие поля в браузере, а затем удалить эту строку?
Создаешь рядом со скриптом файл "LogPass.txt" и в него записываешь строки по образцу
Тест1@mail.ru:111111111
Тест2@mail.ru:абвгд
Тест3@mail.ru:тестТестТЕСТ
Сам скрипт:
IF(TFCOUNT("LogPass.txt") > $count)
INC($count,1)
ELSE
$count = 1
END_IF
$str = TFREAD ("LogPass.txt", $count)
$log = STRCUT2 ($str, 1, STRPOS ($str, ":")-1)
$pass = STRCUT2 ($str, STRPOS ($str, ":")+1, STRLEN ($str))
LCLICK(10,10) // клик по полю логина
WAITMS (50)
TOCLIP($log) // скопировать в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставить
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по полю пароля
WAITMS (50)
TOCLIP($pass)
WAITMS (50)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по "Вход"
WAITMS(100)
каждый новый проход скрипт будет считывать новую строку и так по кругу
И как прочитать из блокнота рандомную строку и вставить в браузер?
Записываешь строки в файл "Text.txt"
$str = TFREAD ("Text.txt", RND(1,TFCOUNT("Text.txt")))
LCLICK(10,10) // клик по ввода
WAITMS (50)
TOCLIP($str) // скопировать в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставить
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
Доброго дня не подскажите а как реализовать чтобы при остановке скрипта все логины что использовал удалялись с блокнота?? а то при остановке и включении все идет с начала и очень не удобно... подскажите как реализовать... и если можно полную остановку если логины закончились спасибо
-
Доброго дня не подскажите а как реализовать чтобы при остановке скрипта все логины что использовал удалялись с блокнота?? а то при остановке и включении все идет с начала и очень не удобно... подскажите как реализовать... и если можно полную остановку если логины закончились спасибо
Зачем что то удалять когда можно записывать номер текущей строки
IF($count = 0)
IF(TFCOUNT("conf.ini") > 0)
$count = INT(INIREAD("conf.ini", "count")) // считываем номер строки
END_IF
END_IF
IF(TFCOUNT("LogPass.txt") > $count)
INC($count,1)
INIWRITE("conf.ini", "count", $count) // записываем номер строки
ELSE
HALT // стоп если строки кончились
END_IF
$str = TFREAD ("LogPass.txt", $count)
$log = STRCUT2 ($str, 1, STRPOS ($str, ":")-1)
$pass = STRCUT2 ($str, STRPOS ($str, ":")+1, STRLEN ($str))
LCLICK(10,10) // клик по полю логина
WAITMS (50)
TOCLIP($log) // скопировать в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставить
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по полю пароля
WAITMS (50)
TOCLIP($pass)
WAITMS (50)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по "Вход"
WAITMS(100)
-
Доброго дня не подскажите а как реализовать чтобы при остановке скрипта все логины что использовал удалялись с блокнота?? а то при остановке и включении все идет с начала и очень не удобно... подскажите как реализовать... и если можно полную остановку если логины закончились спасибо
Зачем что то удалять когда можно записывать номер текущей строки
IF($count = 0)
IF(TFCOUNT("conf.ini") > 0)
$count = INT(INIREAD("conf.ini", "count")) // считываем номер строки
END_IF
END_IF
IF(TFCOUNT("LogPass.txt") > $count)
INC($count,1)
INIWRITE("conf.ini", "count", $count) // записываем номер строки
ELSE
HALT // стоп если строки кончились
END_IF
$str = TFREAD ("LogPass.txt", $count)
$log = STRCUT2 ($str, 1, STRPOS ($str, ":")-1)
$pass = STRCUT2 ($str, STRPOS ($str, ":")+1, STRLEN ($str))
LCLICK(10,10) // клик по полю логина
WAITMS (50)
TOCLIP($log) // скопировать в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставить
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по полю пароля
WAITMS (50)
TOCLIP($pass)
WAITMS (50)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по "Вход"
WAITMS(100)
Сейчас объясню. У меня для примера база логинов паролей 1000 шт. сегодня по 1 голосованию я начала, в процесе подвисла страница, я остановила чтобы продолжить мне надо знать где закончила на каком аккаунте, если удалить в блокноте то все просто, завтра пришла доделала, удобно... если у меня так 100 скриптов где надо делать через день например. В том же вк часто подвисает страница и надо не всегда сразу всю базу... вот потому и ищу вариант как лучше... и проще. Если подсчет вести если не ошибаюсь то будет сбиваться все если я буду добавлять в блокнот пополнение базы новыми аккаунтами, что постоянно делаю(
-
Сейчас объясню. У меня для примера база логинов паролей 1000 шт. сегодня по 1 голосованию я начала, в процесе подвисла страница, я остановила чтобы продолжить мне надо знать где закончила на каком аккаунте, если удалить в блокноте то все просто, завтра пришла доделала, удобно... если у меня так 100 скриптов где надо делать через день например. В том же вк часто подвисает страница и надо не всегда сразу всю базу... вот потому и ищу вариант как лучше... и проще. Если подсчет вести если не ошибаюсь то будет сбиваться все если я буду добавлять в блокнот пополнение базы новыми аккаунтами, что постоянно делаю(
Ну хорошо, так может действительно проще.
IF(TFCOUNT("LogPass.txt") = 0) // стоп если строки кончились
HALT
END_IF
$str = TFREAD ("LogPass.txt", 1) // читаем первую строку
$log = STRCUT2 ($str, 1, STRPOS ($str, ":")-1)
$pass = STRCUT2 ($str, STRPOS ($str, ":")+1, STRLEN ($str))
LCLICK(10,10) // клик по полю логина
WAITMS (50)
TOCLIP($log) // скопировать в буфер
WAITMS (50)
KEYDOWN (#CTRL) // вставить
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по полю пароля
WAITMS (50)
TOCLIP($pass)
WAITMS (50)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
LCLICK(10,10) // клик по "Вход"
WAITMS(100)
// в конце скрипта
TFDELETE("LogPass.txt", 1) // удаляем первую строку
-
Сейчас объясню. У меня для примера база логинов паролей 1000 шт. сегодня по 1 голосованию я начала, в процесе подвисла страница, я остановила чтобы продолжить мне надо знать где закончила на каком аккаунте, если удалить в блокноте то все просто, завтра пришла доделала, удобно... если у меня так 100 скриптов где надо делать через день например. В том же вк часто подвисает страница и надо не всегда сразу всю базу... вот потому и ищу вариант как лучше... и проще. Если подсчет вести если не ошибаюсь то будет сбиваться все если я буду добавлять в блокнот пополнение базы новыми аккаунтами, что постоянно делаю(
Тебе предложили лучший вариант. Тоже пару раз была такая задача. И в начале я предлагал удалять из файла обработанные ссылки. Так и сделали. Но потом задача усложнилась, да и стало понятно, что так хоть и проще, но пользоваться не всегда неудобно.
Просто ведёшь счётчик в файле ini. При старте скрипта он читает номер акка на котором остановился. С него работаем. После успешной обработки акка увеличиваем счётчик в программе и файле.
Пополнять аккаунты можно в конец списка, это ничего не будет сбивать.
Такой способ позволит использовать список по кругу, если нужно. Или использовать с начала при новом дне. Или запустить с любой учётки. Если нужно учитывать дневной лимит по количеству - тоже легко сделать, независимо от количества запусков скрипта в день (сквозной счётчик). Отчёты... и т.д.
И не нужно следить если список опустел. И он не повредится в процессе работы, т.к. мы его не правим, а только читаем. Не нужно хранить две копии пополняемые.
-
Oraven спасибо большое! очень помогли...
Vint буду тестировать оба, просто скриптом у меня сотник разные базу уже привыкла проще все в отдельности держать, еще база всегда перемешивается после выполнения потому приоритет на удаление больше но запоминать удобней если не трогать оба способы очень хорошие я ваша должница!)
-
Подскажите, а есть где-нить скрипт, детектирующий безоговорочно точно версию КЛМН? Или была ли задумка сделать подобный скрипт?
-
нету. была (http://crapware.aidf.org/forum/index.php?topic=1339.0) просьба к автору сделать такой функционал.
пока удалось добиться немногого: что версия КЛМН высвечивается в его основном окне ))))
-
и дабл-кастрейшен, адназначна!
но как отделить агнцев от козлищ? про это собсна вопрос
-
Теперь я понял, Йоллопукка иногда заглядывает сюда и чистит посты Кирилла)