Основы языка AutoIt для новичков и примеры автоматизации
Размер текста: A+ A-

Основы языка AutoIt для новичков и примеры автоматизации

Нажмите, чтобы оценить наш труд:
[Всего: 1 Средняя: 5]

Если вы никогда не программировали, не переживайте — AutoIt создан так, чтобы любой пользователь Windows мог автоматизировать рутинные задачи на компьютере.

Описание: Узнайте, как с помощью AutoIt автоматизировать задачи на компьютере, управлять мышью, окнами и вводом текста, даже без опыта программирования

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

Введение

AutoIt — это простой и удобный язык сценариев для автоматизации действий в Windows.

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

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

Язык появился в конце 1990-х годов как инструмент для упрощения автоматизации на Windows. Его разработка была мотивирована желанием пользователей создавать скрипты для повторяющихся действий, начиная от запуска программ и заполнения форм до тестирования интерфейсов. Со временем AutoIt развился в полноценный инструмент с широким набором команд, библиотек и возможностей, что сделало его незаменимым помощником для администраторов, домохозяек и всех, кто хочет упростить работу на компьютере.

AutoIt не является полноценным языком программирования в классическом смысле, это язык сценариев или макросов. Он предназначен для автоматизации действий на Windows и управления интерфейсом программ, имитируя действия пользователя.

  • Характеристика: лёгкий, интерпретируемый, ориентирован на автоматизацию задач (запуск программ, работа с окнами, имитация клавиш/мыши).
  • Структуризация: поддерживает функции, условные конструкции, циклы, возможность работы с GUI.
  • Типизация: динамическая, переменные не требуют объявления типа, тип определяется автоматически (строка, число, массив, объект COM).
  • Особенности: интеграция с Windows API, поддержка COM, возможность компиляции скриптов в EXE.

Вот краткая таблица с плюсами и минусами AutoIt:

Плюсы Минусы
Простота синтаксиса — легко освоить новичку Устаревший, редко обновляется
Поддержка автоматизации Windows (GUI, окна, мышь, клавиатура) Только Windows, кроссплатформенности нет
Динамическая типизация — быстрое прототипирование Нет строгой типизации, возможны ошибки на этапе выполнения
Возможность компиляции скриптов в EXE Ограниченные возможности для крупных проектов
Поддержка COM, DLL, Windows API Ограниченные инструменты для современного UI
Лёгкий, быстрый интерпретатор Сообщество стало меньше, меньше новых библиотек

Что нужно сделать перед началом

Чтобы начать писать скрипты на AutoIt, не требуется сложная установка или специальные навыки программирования, достаточно нескольких шагов:

1. Установка AutoIt
Сначала нужно скачать официальную версию AutoIt с сайта разработчиков и установить её на компьютер. Установка добавляет всё необходимое: интерпретатор скриптов, редактор SciTE (он облегчает написание кода) и справочные материалы. Full Installer включает в себя все что нужно и редактор скачивать не требуется. Ссылка на официальный сайт: https://www.autoitscript.com/site/autoit/downloads/

2. Редактор кода
Для новичков удобно использовать встроенный редактор SciTE, который идёт вместе с AutoIt. Он подсвечивает команды, показывает подсказки и позволяет сразу запускать скрипт для проверки работы. А вот ссылка на официальный сайт, но уже отдельно для редактора кода (можно установить поверх, никаких проблем): https://www.autoitscript.com/site/autoit-script-editor/downloads/

3. Проверка и отладка
После написания скрипта его нужно запускать и проверять, как он работает. Для точного позиционирования мыши и кликов удобно использовать AutoIt Window Info, чтобы узнать координаты элементов интерфейса на своём экране.

Несколько советов по установке.

Выбирайте x64 пункт, если у вас Windows 64-разрядная (ныне в 95% это она). Но если вы не знаете, выбирайте так. как установлено по умолчанию:

При установке обязательно выбирайте не запуск скрипта, а редактирование. Иначе вы постоянно будете запускать свой скрипт при двойном клике на файл:

Утилита Autoit Window Info входит в комплект поставки, но запускается отдельно. Нужна для определения координат положения курсора мыши на экране, но об этом ниже.

Разбор простейших команд Autoit

Итак, AutoIt — это язык сценариев, который позволяет управлять мышью, клавиатурой и окнами.

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

Для новичков важно понимать базовые команды, которые имитируют действия пользователя. Рассмотрим четыре простые, но очень полезные команды: MouseMove, MouseClick, Sleep, MouseWheel (он же Scroll – колесико мыши) и MsgBox.

MouseMove

Команда MouseMove перемещает курсор мыши в заданные координаты на экране. Например:

MouseMove(500, 300, 10)
  • 500 — координата X.

  • 300 — координата Y.

  • 10 — скорость движения мыши (чем больше число, тем медленнее движение).
    Эта команда полезна, когда нужно автоматизировать перемещение курсора к определённой кнопке или области экрана.

Как узнать ваши X и Y – координаты нахождения тех или иных мест, будь то нужных мест на экране или текущее положение курсора мыши ?

Вот, утилита Autoit Window Info:

На скриншоте это 515 для X и 402 для Y.

AutoIt Window Info — это утилита, которая идёт вместе с AutoIt и помогает определять точные координаты элементов окна на экране. Чтобы узнать координаты мыши, откройте утилиту, найдите вкладку Mouse (пролистайте вправо), перетащите курсор (Finder Tool) на нужный элемент, и в окне программы появятся значения X и Y (обозначено как Position). Эти координаты можно использовать в командах MouseMove и MouseClick для точного взаимодействия с интерфейсом, особенно если разрешение экрана отличается от других компьютеров.

Параметр Color показывает цвет пикселя под курсором мыши в формате шестнадцатеричного кода (например, 0xFFFFFF для белого). Эта информация полезна для скриптов, которые проверяют цвет элементов на экране перед выполнением действий, например, для автоматизации кнопок или индикаторов. Но об этом мы поговорим в другой статье.


MouseClick

Команда MouseClick имитирует нажатие мыши. Пример:

MouseClick("left", 500, 300, 1)
  • "left" — кнопка мыши (может быть "left", "right" или "middle").

  • 500 и 300 — координаты клика.

  • 1 — количество нажатий (по умолчанию 1). Если нужен двойной клик – ставим 2.
    Эта команда часто используется после MouseMove, чтобы кликнуть по нужной кнопке или ссылке.


Sleep

Команда Sleep приостанавливает выполнение скрипта на указанное количество миллисекунд. Это очень важная команда для проверки своих сценариев. Всегда пишите ее вначале для задания интервала до начала работы скрипта ! Пример:

Sleep(2000)
  • Скрипт «заснёт» на 2 секунды.
    Эта команда помогает ждать, пока программа загрузится, или замедлять выполнение скрипта для синхронизации действий. Отсчет идет в миллисекундах (2000 мс = 2 секунды).


MouseWheel / Scroll

Команда для прокрутки колеса мыши. Пример:

MouseWheel("up", 3)
  • "up" — направление прокрутки ("up" или "down").

  • 3 — количество шагов колеса.
    С её помощью можно прокручивать страницы, документы или списки без участия пользователя.


Вывод окна с неким сообщением (аналог Alert в JavaScript)

Самый простой пример — вывести окно с сообщением. Для этого в AutoIt есть команда MsgBox. Код выглядит так:

MsgBox(0, "Привет", "Привет, мир!")

Разбор:

  • 0 — тип окна (обычное информационное).

  • "Привет" — заголовок окна.

  • "Привет, мир!" — текст сообщения, которое увидит пользователь.


    Send
    Команда Send имитирует нажатия клавиш на клавиатуре. Это одна из самых часто используемых команд для ввода текста в приложения. Пример:

    Send("Привет, AutoIt")

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

    Вот простейшие примеры использования команды Send в AutoIt для имитации нажатия клавиш на клавиатуре. Это удобно для автоматического ввода текста или управления программами.

    Send("{ENTER}")

    Эмулирует нажатие клавиши Enter.

    Send("{SPACE}")

    Эмулирует нажатие пробела, например, в текстовых редакторах или формах.

    Send("{DEL}")

    Удаляет выбранный текст или объект.

    Send("{UP}")    ; Стрелка вверх
    Send("{DOWN}")  ; Стрелка вниз
    Send("{LEFT}")  ; Стрелка влево
    Send("{RIGHT}") ; Стрелка вправо

    Используются для перемещения курсора или навигации по меню.

    Send("^c")

    Символ ^ обозначает клавишу Ctrl. Комбинация копирует выделенный текст или объекты. Аналог CTRL + C.

    Send("^v")

    Вставляет текст или объекты из буфера обмена. Аналог CTRL + V.

    Send("^a")

    Выделяет весь текст в активном окне. Аналог CTRL + A.

    Эти примеры помогут новичкам быстро автоматизировать рутинные действия с клавиатурой без сложного программирования.


    WinWaitActive

    Команда WinWaitActive ждёт, пока указанное окно программы станет активным. Это критично для синхронизации скрипта и интерфейса. Пример:

    WinWaitActive("Безымянный - Блокнот")

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

    В WinWaitActive("...") нужно писать точное название окна, которое отображается в заголовке программы (вверху окна). Важно: в Windows 10/11 в заголовке вместо обычного дефиса используется длинное тире (—), а не короткий (-). Это разные символы! Если написать не тот знак, AutoIt не найдёт окно.

    Открой свой файл, запусти утилиту AutoIt Window Info, наведи курсор на окно и посмотри в поле Title — там будет точное название, которое и нужно копировать и вставлять (первая вкладка Window):


    Run

    Команда Run запускает программу или открывает файл на компьютере. Это очень важная команда для начала автоматизации, ведь без неё скрипт не сможет работать с нужным приложением. Пример:

    Run("notepad.exe")

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

    В Windows 10 и 11 чаще всего достаточно писать просто notepad.exe, потому что системные программы находятся в папке, которая указана в переменной окружения PATH. AutoIt автоматически ищет их там.

    Если же вы запускаете программу, которая не находится в системных папках или установлена в пользовательской директории, нужно указывать полный путь к файлу, например:

    Run("C:\Program Files\Notepad++\notepad++.exe")
    То есть, для стандартного Блокнота достаточно notepad.exe, а для сторонних приложений лучше писать полный путь, чтобы скрипт точно их находил.

    ShellExecute

    Команда ShellExecute в AutoIt используется, чтобы открыть файл, папку или программу так, как если бы вы сделали двойной клик в Проводнике.

    • Если это текстовый файл — он откроется в программе по умолчанию (например, в Блокноте).
    • Если это папка — откроется окно с её содержимым.
    • Если это программа — она запустится.

    Пример:

    ShellExecute("C:\123.txt")

    Откроет файл 123.txt в стандартном редакторе.

    Это удобнее, чем Run(), потому что не нужно указывать полный путь к программе — Windows сама решит, чем открыть файл.

    Пример кода программы

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

    • Чтобы начать писать нужно создать новый файл: ПКМ->Создать->AutoIt v3 Script.
    • Как запустить скрипт Autoit ? В редакторе идем Tools -> Go (или F5). Это запустит тот скрипт, который у вас сохранен сейчас в редакторе.
    • Как остановить скрипт Autoit ? Комбинацией клавиш CTRL+BREAK. Либо Tools->Stop Executing

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

    Условия в скрипте:

    • У меня браузер запускается с новой вкладки, иначе нужно менять значение в WinWaitActive.
    • Мой файл находится по адресу C:\123.txt
    • Браузер находится по адресу C:\Program Files\Mozilla Firefox\firefox.exe

    Задачи скрипта:

    1. Открыть текстовый документ
    2. Скопировать все что там написано (URL адрес)
    3. Открыть браузер (в данном случае Firefox)
    4. Перейти по адресу
    5. Найти в поиске “Ronnie Coleman”
    6. Браузер должен быть раньше, чем текстовый документ, так как координаты пишутся под такую ситуацию

    Прежде всего нам нужны координаты, как переключаться на браузер после того, как он откроется (то есть откройте сами его, потом закройте). Можно использовать кнопку TAB, но простейший метод это заранее записать координаты X и Y где будет расположен браузер. Запишите эти координаты предварительно:

     

    Можно самому оставить браузер открытым и не открывать его с помощью Autoit, но мы здесь разбираем пример.

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

    sleep(2000) ;отсрочка начала
    
    Run("C:\Program Files\Mozilla Firefox\firefox.exe") ;запускаем браузер
    
    WinWaitActive("Mozilla Firefox") ;ждем пока его окно ставит активным 
    (или можно поставить отсрочку в неск. секунд)
    
    sleep(1000) ;отсрочка на всякий случай, нам не нужна моментальная работа
    
    ShellExecute("C:\123.txt")
    
    sleep(1000) ;отсрочка секунда, если вдруг блокнот долго открывается
    
    MouseClick("left", 527, 625, 1) ; клик по окну блокнота, чтобы сделать 
    его активным (на всякий случае, если он не будет активным)
    
    Send("^a") ;это сочетание клавиш CTRL+A, то есть, выделить все
    
    sleep(500) ;отсрочка 500 мс
    
    Send("^c") ;это сочетание клавиш CTRL+A, то есть, скопировать все
    
    sleep(1000) ;отсрочка на переход в браузер
    
    MouseMove(1091, 1058) ; перемещаем мышь по координатам, где будет 
    расположен браузер. Запишите эти координаты предварительно. Простейший метод.
    
    sleep(500) ;отсрочка на движение мыши, если комп тормозит (можно не ставить)
    
    MouseClick("left", 1091, 1058, 1) ; можно сразу кликнуть по любой точке, 
    но я предпочитаю предварительно переместить мышь
    
    Send("^v") ;это сочетание клавиш CTRL+V, то есть, вставить текст
    
    Send("{ENTER}") ;это нажатие клавиши ENTER
    
    sleep(3000) ;отсрочка пока откроется страница
    
    MouseMove(770, 488) ; координаты поля для ввода на сайте
    
    sleep(500) ;отсрочка на всякий случай
    
    MouseClick("left", 770, 488, 1) ; кликаем по нему, чтобы 
    сделать поле для ввода активным
    
    Send("Ronnie Coleman") ; вводим любой текст, в нашем случае такой
    
    Send("{ENTER}") ;это нажатие клавиши ENTER

    Вот видео демонстрация:

     

    Нажмите, чтобы оценить наш труд:
    [Всего: 1 Средняя: 5]

    Я, Ирина Петрова-Левин, выпускница Московского Технического Университета Связи и Информатики, где получила образование в области информационных технологий. Мой профессиональный путь связан с JavaScript, PHP и Python, а также с глубоким интересом к тому, как современные технологии влияют на повседневную жизнь. Я стараюсь объяснять сложные процессы так, чтобы они становились понятными каждому, без потери точности и сути.

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

    2 комментария к “Основы языка AutoIt для новичков и примеры автоматизации”

    1. Антон

      Спасибо!!! Жду следующую часть чтобы побольше узнать. Я повторил как у вас написано и все получилось!! Заинтересован в написания бота имитации действий пользователя в игре чтоб сама играла

      1. я передам автору статьи. на самом деле он очень простой, я сам раньше его использовал по работе

    Оставьте комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *


    Срок проверки reCAPTCHA истек. Перезагрузите страницу.

    О нас | Контакты


    Прокрутить вверх