Друкарня від WE.UA

Базовніший вступ

Макрос - це автоматизована послідовність дій або команд, яку можна записати і відтворити для виконання певних завдань. В програмуванні, макроси використовуються для автоматизації повторюваних дій або складних послідовностей команд.

Основна ідея полягає в тому, що ви можете записати послідовність клавіш або команд, які ви зазвичай вводите вручну, і зберегти їх як макрос. Потім ви можете викликати цей макрос для автоматичного виконання відповідних дій.

Макроси можуть бути корисними в багатьох ситуаціях. Ось кілька прикладів:

  1. Автоматизація повторюваних завдань: Якщо ви часто виконуєте одні й ті ж дії, наприклад, створення файлів, копіювання даних або генерація звітів, ви можете записати макрос, який виконуватиме ці дії автоматично. Це дозволить вам заощадити багато часу та зусиль.

  2. Введення складних послідовностей тексту: Якщо ви часто вводите одні й ті ж фрагменти тексту, такі як заголовки, підписи або шаблони коду, ви можете записати макрос, який автоматично вставлятиме ці фрагменти за вас. Це допоможе уникнути помилок та зберегти час на набірі тексту.

  3. Виконання складних операцій: Макроси можуть бути корисними для виконання складних операцій, які потребують багато кроків або команд. Наприклад, ви можете записати макрос, який виконує певні дії у вашому інтегрованому середовищі розробки (IDE), такі як збирання проекту, виконання тестів або рефакторинг коду.

Загалом, макроси є потужним інструментом для автоматизації рутинних задач та підвищення продуктивності. Вони дозволяють економити час та зусилля, а також знижують ризик помилок, пов'язаних з ручним введенням команд або послідовностей клавіш.

Імпорт бібліотеки для макросів

Для легких макросів раджу заюзати бібліотеку keyboard

pip install keyboard

Для більш цікавих та складних макросів раджу бібліотеку PyAutoGUI

pip install pyautogui

Бібліотека keyboard:

  • Опис: keyboard - це бібліотека Python, яка надає можливість взаємодіяти з клавіатурою. Вона дозволяє спостерігати за натисканням та відпусканням клавіш, симулювати натискання та відпускання клавіш, імітувати посимвольне введення тощо.

  • Плюси:

    • Простота використання і зрозумілий інтерфейс.

    • Надає можливість взаємодіяти з клавіатурою, відслідковувати події натискання та відпускання клавіш.

    • Підтримує різні операційні системи (Windows, macOS, Linux).

  • Мінуси:

    • Не надає прямої підтримки для симуляції кліків миші або руху курсора.

    • Може вимагати підвищених привілеїв адміністратора для роботи з деякими клавішами або в певних операційних системах.

Бібліотека pyautogui:

  • Опис: pyautogui - це бібліотека Python для автоматизації взаємодії з екраном комп'ютера. Вона надає функції для керування мишею, клавіатурою, роботи з вікнами програм, розпізнавання зображень тощо.

  • Плюси:

    • Можливість симулювати кліки миші, рух курсора, натискання та відпускання клавіш.

    • Розпізнавання зображень - можливість знайти та клікнути на елементи на екрані, базуючись на їх зображеннях.

    • Кросплатформеність - підтримується на різних операційних системах (Windows, macOS, Linux).

  • Мінуси:

    • Залежність від розміщення елементів на екрані - використання розпізнавання зображень може бути нестабільним, якщо елементи переміщуються або змінюють розмір.

    • Потребує точних координат або зображень для керування елементами на екрані.

    • Може вимагати підвищених привілеїв адміністратора для роботи з деякими операційними системами або деякими додатками.


Любий читачу, якщо тобі подобається подібні довгочити та ти хотів би побачити еволюцію цього проекту в майбутньому, то вподобай цю публікацію!

Також переглянь інші праці до яких я доклав немало зусиль:

Автоматизуємо регистрацію макросом

import keyboard
import time

def macro():
    keyboard.write("your_poshta@gmail.com")  # Вводимо електронну пошту
    time.sleep(0.1)  # Пауза, щоб упевнитися, що текст був введений

def macro2():
    keyboard.write("password")  # Вводимо пароль
    time.sleep(0.1)  # Пауза, щоб упевнитися, що текст був введений
    keyboard.press("enter")  # Натискаємо клавішу Enter

def main():
    while True:
        if keyboard.is_pressed('f2'):  # Якщо натиснута клавіша F2
            macro()  # Викликаємо функцію макросу 1
        if keyboard.is_pressed('f4'):  # Якщо натиснута клавіша F4
            macro2()  # Викликаємо функцію макросу 2

if __name__ == '__main__':
    main()

В цьому коді ми визначаємо дві функції макросів: macro() та macro2(). Перша функція вводить електронну пошту, а друга - пароль. В обох функціях ми також встановлюємо коротку паузу для того, щоб упевнитися, що текст був введений перед натисканням клавіші Enter.

У функції main() ми використовуємо цикл while True, який постійно перевіряє, чи натиснуті клавіші F2 та F4. Якщо натиснута клавіша F2, викликається функція macro(), а якщо натиснута клавіша F4, викликається функція macro2().

Таким чином, при запуску цього коду, коли ви натискаєте клавішу F2, введеться електронна пошта, а при натисканні клавіші F4 - введеться пароль та натискається клавіша Enter.

в два натискання

До того ж, ви можете прописати туди якесь розсильне повідомлення та не прийдеться юзати Ctrl C - Ctrl V, а можна буде самому обрати необхідний хот кей.

Бані хоп завдяки макросу

Я брав гру Parkour Tag.

import keyboard
import time

def macro():
    while True:
        keyboard.press('shift')  # Затискаємо клавішу Shift
        keyboard.press('w')  # Натискаємо клавішу W
        time.sleep(1)  # Затримка на 1 секунду
        keyboard.press('space')  # Натискаємо клавішу Пробіл
        keyboard.release('space')  # Відпускаємо клавішу Пробіл
        keyboard.release('w')  # Відпускаємо клавішу W
        keyboard.release('shift')  # Відпускаємо клавішу Shift

        if keyboard.is_pressed('e'):  # Якщо натиснута клавіша E (англійська)
            break  # Виходимо з циклу

def main():
    while True:
        if keyboard.is_pressed('q'):  # Якщо натиснута клавіша Q
            macro()  # Викликаємо функцію макросу
        if keyboard.is_pressed('e'):  # Якщо натиснута клавіша E (англійська)
            break  # Виходимо з циклу

if __name__ == '__main__':
    main()

Цей код представляє собою простий макрос, який виконує певну послідовність дій при натисканні клавіші "Q". Основна функція main() запускається вічно в циклі while True і очікує натискання клавіш.

Основна функція macro() виконує наступні дії:

  1. Затискає клавішу "Shift" за допомогою keyboard.press('shift').

  2. Затискає клавішу "W" за допомогою keyboard.press('w').

  3. Затримує виконання програми на 1 секунду за допомогою time.sleep(1).

  4. Натискає клавішу "Пробіл" за допомогою keyboard.press('space').

  5. Відпускає клавішу "Пробіл" за допомогою keyboard.release('space').

  6. Відпускає клавішу "W" за допомогою keyboard.release('w').

  7. Відпускає клавішу "Shift" за допомогою keyboard.release('shift').

Ці дії повторюються безкінечно, поки не буде натиснута клавіша "E" англійською мовою. Якщо натиснута клавіша "E", цикл виходить з функції macro() за допомогою оператора break.

У функції main() перевіряється натискання клавіш "Q" та "E". Якщо натиснута клавіша "Q", викликається функція macro(), яка виконує послідовність дій. Якщо натиснута клавіша "E", цикл виходить з функції main() та програма завершує свою роботу.

Отже, цей код створює макрос, який можна активувати натисканням клавіші "Q" і виконує послідовність натискання клавіш "Shift", "W" і "Пробіл" з паузою у 1 секунду між ними. Цикл макросу може бути припинений натисканням клавіші "E".



Розширюйте, покращуйте, вдосконалюйте, зміцнюйте український контент.

Слава Україні!

Статті про вітчизняний бізнес та цікавих людей:

  • Як побудована програма Meest China Academy

    Курс про товарний бізнес охоплює різні етапи роботи: від пошуку ідеї до перевірки товару, логістики та масштабування. Програма Meest China Academy містить 17 модулів, які послідовно розкривають ці теми без зведення всього навчання до однієї універсальної поради.

    Теми цього довгочиту:

    Meest
  • Які технології використані в Айфон 17

    Айфон 17 поєднує OLED-дисплей із частотою до 120 Гц, чип A19, дві камери Fusion 48 Мп і швидке заряджання через USB-C. У COMFY можна купити Айфон 17 з накопичувачем на 256 або 512 ГБ, вибравши конфігурацію відповідно до обсягу фото, відео та застосунків

    Теми цього довгочиту:

    Iphone 17
  • Як вибрати вживаний iPhone: коротке керівництво для розумної покупки

    Вторинний ринок смартфонів Apple активно зростає, і питання, як вибрати вживаний iPhone, стає актуальним для дедалі більшої кількості користувачів. Правильний підхід дозволяє отримати бу iPhone з актуальною iOS і доброю камерою за помітно нижчу ціну, ніж у нових пристроїв.

    Теми цього довгочиту:

    Iphone
  • Як подолати жіночу безплідність за допомогою донорських яйцеклітин

    Діагноз "безпліддя" рідко звучить як вирок одразу. Для багатьох жінок саме в цей момент вперше звучить словосполучення "донорські яйцеклітини" — і це часто не кінець шляху до материнства, а якраз новий, реальний шанс.

    Теми цього довгочиту:

    Донорство
  • Як заспокоїти зубний біль і чому самолікування може призвести до операції?

    Раптовий біль у зубі може призвести до порушення сну та ускладненого вживання їжі. Люди часто приймають таблетки, роблять полоскання або лікуються народними засобами. В таких випадках не варто відкладати візит до стоматолога, адже можуть з’явитись ускладнення.

    Теми цього довгочиту:

    Стоматологія
Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
ПЄ
Пан Євген@ukrainian

19Довгочити
10.3KПерегляди
68Підписники
Підтримати
На Друкарні з 16 квітня 2023

Більше від автора

Це також може зацікавити:

  • Програмування

    Чи цікавитеся ви програмуванням? Як ви вивчали його? Програмування — це не лише навичка, яка може допомогти вам знайти роботу в сучасному цифровому світі. Це також потужний інструмент для розвитку мислення, творчості та розв’язання складних завдань.

    Теми цього довгочиту:

    Програмування

Коментарі (4)

Корисно?

Це також може зацікавити:

  • Програмування

    Чи цікавитеся ви програмуванням? Як ви вивчали його? Програмування — це не лише навичка, яка може допомогти вам знайти роботу в сучасному цифровому світі. Це також потужний інструмент для розвитку мислення, творчості та розв’язання складних завдань.

    Теми цього довгочиту:

    Програмування