Сделать программу для повторяющихся действий. Как автоматизировать повторяющиеся действия на вашем компьютере

  • 23.05.2019

Привет, всем!
Хотел инвайт на Хабр (спасибо пользователю Nast за инвайт ), и наконец-то этот факт стал двигателем для написания статьи, которая основывается на историю личного опыта в области автоматизации задач связанных с ПК.
Я – автоматизатор, люблю, что бы, большинство задач (программных, аппаратных) исполнялись автоматически без вмешательства меня или других людей.

Цель:

  1. Рассказать и, возможно, научить оптимизировать работу на ПК.
  2. Тот, кто искал подобную информацию, будет иметь знания для старта и развития в себе оптимизатора задач.
  3. Дать дополнительную возможность преодолеть лень, и сделать что-то, действительно, полезное для себя и окружающих.
  4. Показать, пример, как сделать программу, которая автоматически исполняет записанный алгоритм действий для вашего удобства.
  5. Доказать, что автоматизация - это не нудно, а в результате полезно и даже очень интересно.
Причины:

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

Во-вторых. У меня раньше часто появлялись рутинные задачи, которые я заставлял автоматически исполняться с помощью разных программных продуктов. Но сколько не существовало бы вариантов программного обеспечения, всегда есть функции, которые не так-то и просто исполнить в одном пакете. И мне приходилось использовать в комплексе несколько программ для автоматизации вместе с программами для стандартного предназначения офисной или не совсем офисной работы.

В-третьих. Пришло время, когда появилась реальная рутинная задача. Связанна она была с тем, что нужно было вытянуть текст, таблицы, изображения из PDF-файла, с установленной на нем защитой от копирования, распознавания любыми программными средствами, печати, и еще чем-то. В общем, автор файла поставил максимальную защиту в некой (уже и не вспомню) программе для создания PDF-файлов. Да и еще важный момент, страниц в файле 202, фон синий, а текст – местами желтый, местами голубой. И самое главное – сроки для получения готового текста всего 3 дня. Я иногда страдаю ленью, поэтому, сразу отбросил весь физический труд, а также, я не стал искать команду из десятка любителей печатать вручную текст с картинки. Я как всегда обратился к программным продуктам для автоматизации задач. Ведь потратив один час на написание правильного алгоритма можно полдня заниматься более приятными действиями.

Но не все так просто, как кажется на первый взгляд. Я уже говорил выше, что одной программой можно выполнить максимум 99,9% нужной работы. Вот я начал искать в интернете и использовать по очереди самые модные, по рейтингу и отзывам, программы для автоматизации, конечно же, при условии, что они, во-первых, могли исполнить нужные мне функции именно в среде GUI, а не в консоли, а во-вторых, бесплатные. Да, кстати, речь идет о Win-приложениях. Я не буду рекомендовать, какое приложение лучше, а какое хуже – это вы можете попробовать лично сами, под ваши цели и привычки по удобству. В принципе, я и на BASIC могу автоматизировать лучше, чем любая специальная для этого дела программа, но не хотел ставить Visual Studio – это трата времени и места на жестком диске. Тем более что нужна программа, которая уже имеет все варианты управлением ПК, где нужно лишь выбрать в список все нужные действия и изменить несколько параметров под себя. А для типичного пользователя именно это и требуется, нет нужды изучать языки программирования, все должно уже быть создано заранее и работать.

Так вот. Остановил свой выбор на программке xStarter (на то время v.1.9.2). Подошла на 90%. Не буду расхваливать, скажу только о том, что действительно приложение имеет очень удобную среду для широкой реализации алгоритма автоматизации. Единственное плохо – это некоторые функции не настраиваются, к примеру, функция скриншота экрана теряет качество за счет сжатия – для распознавания текста не годится. И еще мне не понравилось, что нет отдельного окошка, которое показывало бы координаты курсора мышки, пришлось скачать гаджет для боковой панели в ОС Vista «Mouse Pointer Locator». И, конечно же, третье – не очень важное как для продвинутого пользователя, но в некоторых спорных вопросах нужное – это справка к функционалу приложения. Такое чувство, что файл справки из старой версии, и имеется только часть функционала в описании.

На момент написания статьи, проверил новую версию xStarter v.1.9.3 – файл справки теперь полный, есть прицелы для определения начальной и конечной точки курсора на экране, и качество снимка экрана заметно улучшилось, теперь и текст распознавать можно. Ребята молодцы! Я с удовольствием буду ждать новые релизы этой программы, где получу еще больше функционала.

А реализовал я алгоритм распознавания PDF-файла (с Защитой) очень просто:

  1. PDF-файл на весь экран
  2. Снимок экрана “Print Screen”
  3. Вставить в “Photoshop”
  4. Цикл до 202-й страницы
  5. Макрос в “Photoshop”: обрезка, сохранение
  6. Папка с картинками в “Fine Reader”
Ручная работа:
  • Вручную, анализ текста и правка ошибок.
  • Сохранение в “Word”
  • Редактирование DOC-файла
Использование времени отдельных задач:
  • Создание алгоритма автоматизации – 25-30 мин.
  • Настройка алгоритма – 30-60 мин.
  • Распознание и редактирование текста – 4-5 ч.
Итоговое использование времени:
  • С автоматизацией (1 чел. только редактирует текст, остальное автомат.) – 5-7 ч.
  • Без автоматизации (1 чел. делает все вручную) – 3-5 дней.

Практический пример: (не о том, что было написано чуть выше!)

Я покажу вам не просто пример типа «Hello World», я вам покажу, как создать бот (то есть, алгоритм автоматизации) для игры «Фабрика друзей» на сайте vkontakte.ru

Меня привлекла эта игра именно тем, что в ней можно накрутить виртуальные деньги с помощью бота, не смотря на то, что игра работает в браузере и является Flash-объектом. Я не имею компетенции во flash-технологиях, по этому, специально сформированные запросы для управления игрой без браузера (если такие вообще существуют?), сразу откинул в сторону, мой бот будет использовать только курсор мышки конкретно для игры, и еще несколько функций для управления браузером, снимком экрана, переменные, циклы, и больше ничего не нужно.

Бот состоит из 2-х задач:

  1. «Фабрика друзей – покупка (Firefox)» - основной алгоритм бота. "Firefox" - это просто обозначение браузера с каким будет работать алгоритм. Можно подстроить под любой.
  2. «Read_Compare_ff» - дополнительный алгоритм для проверки изображения на факт его изменения.
Алгоритм бота исполняет следующее:
  1. Находит окно браузера с запущенной игрой и открывает его на весь экран.
  2. Далее запускается 2-я задача, которая делает снимок области экрана, именно в том месте, где расположена цифра с суммой денег в игре.
  3. Теперь бот должен навести курсор, и нажать на кнопку «Питомник» далее «Все» и купить первого попавшегося питомца.
  4. Когда питомец куплен, то уменьшается сумма денег – это проверит наша 2-я задача по п.2.
  5. Если питомцев вообще нет в питомнике «Все» (часто бывает), тогда повторить п.3 бесконечно.
  6. После покупки, бот, через некоторое время проверяет (п.2) факт продажи питомца – то есть, увеличение суммы денег.
  7. Если питомец продан, то бот повторяет п.3, если не продан, тогда бот нажимает кнопку «Питомник», для обновления результата игры, бесконечное число раз.
Это общее описание работы алгоритма, который я сделал для своих целей, и пользуюсь даже сейчас. Первым был бот для посещения игры каждые 2 часа, но он давал намного меньше прибыли в игре, чем 2-й. Хорошо оставлять бот работающим на время отсутствия за ПК.

И напоследок...

Плюсы автоматизации:

  1. Увеличение продуктивности работы с ПК (в первую очередь касается повторяющихся задач).
  2. Появляется больше времени на отдых или другие занятия.
  3. Преодоление порога начальной лени, то есть, намерение делать алгоритм для облегчения своего же существования.
  4. Полезность в личных целях.
  5. Дополнительные знания технологий – только на пользу.
Минусы автоматизации:
  1. Люди не хотят учиться и развиваться, их устраивает делать то, что они делают на протяжении десятилетий. Лень преобладает!
  2. Люди боятся делать работу быстрее, так как начальник сразу завалит еще дополнительной работой. Опять же, лень превыше премиальных!
  3. Людей еще со школы учат работать, а не зарабатывать!
Итог:
Я хочу, что бы эта статья помогла хоть кому-то развиться в области автоматизации процессов. И что бы все кто косвенно имеет отношение к данной статье, выразили свое, субъективное, мнение по поводу прочтенной информации. Ну, и конечно же буду уже очень благодарен за приглашение в лавы Хабрапользователей;)

Теги: Добавить метки

Основные функции

  • простой для изучения синтаксис наподобие Basic;
  • эмуляция движений компьютерной мыши и нажатий клавиш;
  • управление процессами;
  • управление окнами активных приложений;
  • запуск определенных действий с помощью нажатия горячих клавиш;
  • создание GUI – графического интерфейса пользователя;
  • работа с реестром, буфером обмена, сетью;
  • обработка функций, циклов, логических условий и др.

Преимущества и недостатки

Преимущества:

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

Недостатки:

Аналоги

AutoHotkey . Бесплатный набор профессиональных инструментов для автоматизации работы на ПК. Данная программа самодостаточна, умеет настраивать нажатие комбинаций клавиш, обладает собственным языком программирования. Все это дает возможность создавать сложные последовательности операций и графические диалоговые окна. Также в программе можно использовать COM, с помощью чего осуществляется управление другими приложениями. Но в этом решении есть и свои минусы: отсутствие редактора с подсветкой синтаксиса и невозможность отладить скрипты.

xStarter. Бесплатная программа-автоматизатор, в которой смогут разобраться даже начинающие пользователи. В ее визуальном конструкторе можно записывать последовательность действий. Также есть возможность создания графического интерфейса, диалоговых окон. В программе присутствует планировщик задач. Из минусов: не всегда правильная простановка клавиатурной раскладки, отсутствие функции текстового программирования операций.

Принципы работы

Для того чтобы создать скрипт, назначьте для него папку и установите AutoIt. Нажмите на свободное пространство в этой папке и отметьте пункты «Создать», «AutoIt v3 Script»:

Создание скрипта

Затем задайте название для скрипта, после чего откройте его для написания команд, вызвав контекстное меню и выбрав пункт «Edit Script». После этого должен открыться редактор для программы – SciTe:

Редактор для программы

Поначалу скрипт будет пустым. Комментарии в нем выделяются зеленым цветом. Существуют одно- и многострочные комментарии.

Чтобы добавить в скрипт возможность отображения текста, примените функцию «MsgBox», введя в конце файла строку MsgBox(0, "Tutorial", "Hello World!"). Значения, указанные в скобках, являются параметрами функции.

Запустить файл можно двумя способами:

1. Через контекстное меню:

Запуск скрипта

2. Через редактор:

Запуск через редактор

Чтобы узнать, как работать с файлами в программе, предлагаем посмотреть видео:

AutoIt – функциональная программа для написания скриптов.

Статья опубликована на сайте Boris Lion 21 Июнь, 2008 - http://borislion.ru/ (Инициатива написания данной статьи принадлежит Борису Лайону, за что ему большое спасибо)

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

Весьма часто на компьютере приходится делать какие-то простые, но повторяющиеся много раз действия типа движений мыши, нажатий на клавиши, ввода текста.

Это монотонная и совершенно неинтересная работа. Как хотелось бы, чтобы она выполнялась сама! Или, чтобы её выполнение взял бы на себя компьютер.

Это вполне возможно.

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

Грубо говоря, Вы показываете компьютеру, что ему нужно сделать, а потом он сам воспроизведёт ваши действия тогда и столько раз, сколько вам нужно.

При этом программное обеспечение, с которыми вы работаете, будут считать, что воспроизведённые действия исходят именно от пользователя, от вас.

Таким образом, можно автоматизировать любые повторяющиеся действия на вашем компьютере.

Я попробовал несколько программ автоматизации и больше всего меня устроила разработка Дениса Сафонова под названием AutoClickExtreme: .

Программа AutoClickExtreme служит как раз для автоматизации повторяемых действий пользователя.

С помощью неё можно обрабатывать таблицы в Excel, прорабатывать большое количество файлов, делать запасную копию важных данных, а также переносить базы данных из одного формата в другой.

Это лишь малая часть возможных применений этой программы. С помощью неё можно автоматизировать практически любое простое повторяющееся дело.

Вот полезные возможности AutoClickExtreme.

  1. Возможность ускоренно воспроизводить записанные действия. Компьютер быстрее вас и может делать те же дела в десятки раз быстрее.
  2. Возможность вручную редактировать результат записи действий. Например, Вы можете убрать лишние действия в записи, вроде ненужного движения мышкой.
  3. Возможность вставка вместо любого короткого слова текста любой длинны (функция "автотекст") в любой программе.
  4. Запуск конкретного воспроизведения можно привязать к "горячей клавише". И используя эту клавишу запускать его в любой нужный вам момент
  5. Возможность воспроизводить записанные действия по циклу любое число раз. Поставьте 100000 циклов и идите спать, всё сделается само.
  6. Возможность вставки в записанные действия произвольной задержки. Вы можете отложить старт на любой промежуток времени, вставить команду задержки между любыми действиями.

Кроме преимуществ, есть и некоторые ограничения при использовании программы AutoClickExtreme.

  1. Не всегда адекватно воспроизводит записанные действия в играх на основе DirectX.
  2. Нет возможности работать с консольными программами, так как работа с ним построена на других принципах ввода информации с клавиатуры и мышки, чем Windows-приложения.

Личная автоматизация - дело творческое, наверняка вы сможете придумать какое-то своё, оригинальное применение этой программы.

Я сейчас подкину вам несколько ценных идей по использованию AutoClickExtreme.

  • В ваше отсутствие возможно запускать какие-либо программы или процессы. Причём Ваш компьютер сам вполне может делать сложные дела типа запуска соединения Интернета, подключения к конкретному сайту и выполнения на нём каких-то действий.
  • Возможно выполнение действий для программ, работающих с большими задержками. Лучше оставить в ваше отсутствие "робота" вместо себя, который будет продолжать дело после завершения какого-либо длительного процесса.
  • Организация запуска определённых программы и документов при загрузке компьютера, чтобы сразу можно было бы начинать работу с ними. Другой вариант, это подготовить несколько вариантов запускаемых программ или документов в зависимости от вида работы. И не надо будет тратить время на подготовку перед работой.
  • Настроить свои собственные "горячие клавиши", которые не были предусмотрены в конкретной программе. Запишите нужные действия с программой, и "повесьте" их на конкретную горячую клавишу.
  • Массово обрабатывать большое количество документов: баз данных, изображений, текстов, делая какие-то стандартизированные правки.
  • Возможно делать резервное копирование ценных документов на вашем компьютере. Автоматизированный бэкап наиболее важных папок на другой носитель, который бы делался без вашего присутствия позволит обезопасить ваши рабочие файлы от потерь на случай сбоев.
  • Если в работе нужно автоматизировано что-то пронумеровать или просчитать, можно использовать стандартную программу "калькулятор" или Excel, куда вставятся данные, осуществляется расчёт и результат потом скопируется в другой файл.
  • Удобно разносить информацию с одного документа в несколько разных.

Почему имеет смысл максимально автоматизировать вашу работу с помощью AutoClickExtreme?

  • Вы сможете экономить время и нервы, которое вы бы потратили на рутинные операции.
  • Используя вызов записанных действий на горячие клавиши, вы можете дать себе дополнительные инструменты для работы, ещё более экономящие ваше время.
  • Полностью исключаете ошибки. Человеческий фактор работает, и при выполнении однотипной работы иногда будут встречаться недочёты. Компьютер же не ошибается.

В целом AutoClickExtreme мне понравилось. Интересно, что демонстрационная запись рисует "руками" в графическом редакторе Paint достаточно сложные изображения. На это стоит посмотреть.

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

xStarter автоматизирует выполнение повседневных задач по планировщику или событиям системы.

Ключевые преимущества

Сократите свое рабочее время на 35%.

Создав макросы на ваши повседневные задачи, вы избавляете себя от рутины. А выполнять эти макросы компьютер с помощью xStarter может и в ваше отсутствие по расписанию.

Позаботьтесь о сохранности ваших данных.

Если автоматическое создание резервных копий ваших документов и электронной почты не требует почти никаких усилий, то почему бы ни делать это?

Замена планировщику Windows.

Расширенный планировщик xStarter позволит вам более точно задавать момент запуска программы или выполнения задачи. Задачи могут запускаться точно в указанное время, периодически или по комплексному формату. При работе xStarter в режиме сервиса NT возможен запуск задач даже при отсутствии активных пользователей.

Отслеживание изменений файлов и каталогов.

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

Действия в Internet.

Отправлять и получать электронную почту, работать с файлами через FTP и HTTP - вот лишь краткий список того, что вы сможете автоматизировать при работе с Internet. Например: получать ежедневные отчеты и сохранять их в указанный каталог; отправлять оповещения о выполненных задачах без помощи пользователя; скачивать log и другие файлы и т.д.

Макросы Windows.

Вы можете записывать макросы, работая в любых программах и с любыми объектами в среде Microsoft Windows, с помощью xStarter. Каждый макрос - это файл, который содержит последовательность записанных движений и кликов мыши, нажатий кнопок клавиатуры. Этот файл может быть воспроизведен в любое время по расписанию или горячей клавише, как будто эти действия выполняете вы сами.

Удаленное управление.

С помощью xStarter Web Pilot становится возможным запускать задачи на удаленных компьютерах, просматривать задачи и их логи, отключать/включать.

Компиляция задач.

Из задач xStarter можно создавать.exe файлы и переносить задачи между компьютерами. При запуске задач пользователи могут заполнять некоторые параметры, специфические для данного пользователя или компьютера.

Firebird/Interbase.

Специальная версия xStarter Job Scheduler for Firebird/Interbase позволяет выполнять специфические задачи для указанных серверов баз данных. С помощью этой версии можно выполнять SQL скрипты, делать backup/restore баз данных и т.д.

Автоматизация задач без навыков программирования.

Каждая задача xStarter состоит из набора действий. Действия нацелены на выполнение различных функций, вот лишь некоторые из них:

  • запуск программ;
  • вывод сообщений на экран;
  • подключение к Internet;
  • синхронизация каталогов;
  • операции с окнами;
  • операции с текстовыми и log файлами;
  • отключение и подключение сетевых каталогов;
  • и т.д.

Задачи могут выполняться по расписанию, по горячим клавишам или по событиям системы.

Системные требования

Intel Pentium или совместимый процессор
Windows NT4/2000/XP/2003/Vista


Размер: 814 КБ
Цена: 15.00 $
Назначение: планировщик заданий

Многие действия нам приходится совершать регулярно. Наши будни - зарядка, завтрак, душ, поездка в офис. У многих людей весь рабочий день расписан по минутам. Вы можете случайно забыть о чем-либо или умышленно пропустить некоторые привычные действия.

Виртуальная жизнь компьютерных систем, к счастью, поддается автоматизации. Можно назначить какое-либо задание на определенное время, и оно обязательно выполнится. Жаль, что с помощью каких-либо высших сил нельзя назначать автоматическую чистку зубов, бритье и другие, утомительные процедуры. Но то, что невозможно в реальном мире, уже давно реализовано в компьютерах, в рамках специального класса программного обеспечения, предназначенного для автоматизации процессов.

Active Task Manager – это утилита для автоматического выполнения разнообразных заданий, с помощью которой вы можете спланировать работу программ, требующих регулярного запуска. Суть работы утилиты сводится к ответу на два извечных вопроса – «что?» и «когда?».

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

В качестве планируемых задач могут выступать исполняемые файлы EXE, COM, а также пакетные модули BAT. Кроме того, программа может выводить разнообразные предупреждения, осуществлять резервное копирование с помощью , а также выключать компьютер.

Регулярность выполнения задач может задаваться в виде интервалов между последовательными запусками, путем указания точных моментов времени в течение суток, недели или месяца.

Создание новой задачи осуществляется с помощью кнопки Add Task. При этом открывается довольно простой, понятный мастер. Сначала вам необходимо ввести название будущей задачи. Затем вы должны указать тип задачи – выполнение приложения, напоминание, резервное копирование или выключение компьютера. Напоминания могут представлять собой как текстовые сообщения, так и звуковые сигналы.

В случае выбора запуска задачи, от вас потребуется выбрать путь к исполняемому модулю и указать ключи запуска. Далее, вы задаете периодичность выполнения задачи. Работа закончена.

Для настройки напоминания вам предлагается ввести его текстовое сообщение, а также указать звуковой файл. Выбор периодичности для всех типов операций идентичен.

Резервное копирование работает только при наличии в системе модуля Active Backup Expert, и вы можете лишь указать тип создания копии данных – полная копия или инкрементальное дополнение.

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

После завершения настройки программы вы будете видеть лишь маленький колокольчик в системном лотке. Если вы наведете на него курсор мыши – то увидите стандартное всплывающее окно (baloon) с информацией о статусе грядущих задач.

Программа работает как стандартная служба Windows, которая, согласно информации с официального сайта, занимает лишь 180КБ в оперативной памяти. Active Task Manager – простая, компактная утилита для планирования процессов, серьезно придраться к которой за все время тестирования так и не получилось. Все запланированные вручную задачи выполнились именно так, как и описывалось в Справке.