49.30M

П_М2_У6. PyAutoGUI. Управление клавиатурой

1.

2023
Python
Тема занятия
PyAutoGUI.
Управление
клавиатурой
Изображение от Storyset на Freepik.com

2.

2023
План
занятия
Python
Введение
Теория
С чего начать?
Практика Запись текста
Практика Автобег
Теория
Прочие возможности
Домашнее задание
Итоги
Изображение от Storyset на Freepik.com

3.

2023
Python
Проверяем
домашнее задание
1. Трудности
3. Знания
Какие трудности возникли
при написании кода?
Какой информации не хватило
для выполнения задания?
2. Как думаешь
4. В процессе
Как можно было бы
избежать трудностей?
Что больше всего
понравилось/не понравилось
в процессе выполнения задания?
Изображение от Storyset на Freepik.com

4.

2023
Введение
На этом занятии мы изучим новые методы
модуля PyAutoGUI, которые позволят нам
управлять нашей клавиатурой с помощью кода.
Поехали!
Python

5.

2023
Теория
С чего начать?
Python

6.

2023
Python
Теория
Мы уже знаем, что модуль PyAutoGUI
может управлять нашей мышкой, однако,
это не все его возможности. Он также умеет
брать под контроль нашу клавиатуру.
Изображение от Storyset на Freepik.com

7.

2023
Теория
Используя мышку и клавиатуру вместе,
мы можем сделать более совершенные
программы для автоматизации.
Python

8.

2023
Теория
Мы можем сделать автоматический
бег в игре или бота для любых
действий, связанных с клавиатурой.
Python

9.

2023
Python
Теория
На работу с клавиатурой есть ограничения
— не все клавиши можно заставить нажиматься.
Изображение от Storyset на Freepik.com

10.

2023
Python
Теория
Перечень всех доступных клавиш:
['\t', '\n', '\r', ' ', '!', '"', '#', '$', '%', '&', "'", "(",
')', '*', '+', '/', '0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', ':', ";" '=', '>', '?', '@', '[', '\\', ']', '^', '_', '`' ,
'a', 'b', 'c', 'd', 'e','f', 'g', 'h', 'i', 'j', 'k', '1', 'm', 'n', '0',
'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '{', '|', '}',
'accept', 'add', 'alt', 'altleft', 'altright', 'apps', 'backspace',
'browserback', 'browserfavorites', 'browserforward', 'browserhome',
'browserrefresh', 'browsersearch', 'browserstop', 'capslock', 'clear',
'convert', 'ctrl', 'ctrlleft', 'ctrlright', 'decimal', 'del', 'delete',
'divide', 'down', 'end', 'enter', 'esc', 'escape', 'execute', 'f1', 'F10',
'f11', 'f12', 'f13', 'f14', 'f15', 'f16', 'f17', 'f18', '19', 'f2', '420',
'f21', 'f22', 'f23', 'f24', 'f3', 'f4', 'f5', 'f6', 'f7', 'f8', 'f9',
'final', 'fn', 'hanguel', 'hangul', 'hanja', 'help', 'home', 'insert', 'junja',
'kana', 'kanji', 'launchapp1', 'launchapp2', 'launchmail','launchmediaselect', 'left', 'modechange', 'multiply', 'nexttrack',
'nonconvert', 'nume', 'num1', 'num2', 'num3', 'num4', 'num5', 'num6','num7', 'num8', 'num9', 'numlock', 'pagedown', 'pageup',
'pause', 'pgdn', 'pgup', 'playpause', 'prevtrack', 'print', 'printscreen', 'prntscrn', 'prtsc', 'prtscr', 'return', 'right',
'scrolllock', 'select', 'separator', 'shift', 'shiftleft', 'shiftright', 'sleep', 'space', 'stop', 'subtract', 'tab', 'up',
'volumedown', 'volumemute', 'volumeup', 'win', 'winleft', 'winright', 'yen', 'command', 'option', 'optionleft', 'optionright']

11.

2023
Теория
Запись текста
Python

12.

2023
Python
Практика
Hello!
Задание:
Давай попробуем написать слово
«hello», используя команду write().
Изображение от Storyset на Freepik.com

13.

2023
Теория
А если по буквам? А если я хочу просто
нажать на клавишу, а не писать текст?
Тогда тебе пригодится метод press().
Помимо обычных букв, press() также
предназначен и для нажатия других клавиш
по типу «Caps Lock», «Enter» и др.
Python

14.

2023
Python
Практика
По буквам
Задание:
Напиши текст «You Spin Me Round»
по буквам, после каждой буквы нажимай
«Enter». Пусть программа печатает в
текстовый документ.
Изображение от Storyset на Freepik.com

15.

2023
Теория
Автобег
Python

16.

2023
Python
Теория
А если я хочу держать клавишу?
Для этого существует метод
keyDown(). Он зажимает указанную
клавишу и держит её. Также существует
и обратный метод — keyUp().
Изображение от Storyset на Freepik.com

17.

2023
Python
Практика
7 секунд
Задание:
Зажми клавишу «W» на 7 секунд
и отожми её после.
Изображение от Storyset на Freepik.com

18.

2023
Практика
Пример
работы
Python

19.

2023
Практика
Квадрат
Задание:
Запрограммировать передвижение
персонажа в какой-либо игре
по квадратной траектории.
Python

20.

2023
Теория
Прочие
возможности
Python

21.

2023
Практика
Команда press() имеет параметр presses,
отвечающий за количество нажатий.
pyautogui.press("a", presses=4)
Python

22.

2023
Практика
Также pyautogui умеет нажимать несколько
клавиш одновременно, что полезно в некоторых
программах или играх. Для этого необходимо
использовать следующую конструкцию.
with pyautogui.hold('shift'):
pyautogui.press("2")
Python

23.

2023
Python
Практика
Помимо этого существует команда
hotkey(), которая может нажимать
горячие клавиши по порядку. Для этого
нам нужно передать ей несколько клавиш
подряд. Запусти следующий код у себя.
import time
import pyautogui
clear = "\n" * 50
text = "[][][][][][][][][]"
percent = 0
for slot in range(11):
print(clear)
temp = ""
temp += "[x]" * slot
temp += "[]" * (10 - slot)
print("Загрузка...")
print(temp)
time.sleep(1)
pyautogui.hotkey("alt", "f4")

24.

2023
Практика
Результат
Python

25.

2023
Python
Домашнее
задание
Улучшаем спам-бота
Используя второй аргумент
рyautogui.write(“...” interval=0.25), сделаем
спам-бота менее заметным для анти-спам программ.
Добавляем прыжок
Во многих играх прыжок увеличивает скорость бега,
поэтому добавим к автобегу постоянные прыжки.
Изображение от Storyset на Freepik.com

26.

2023
Python
Итоги
1
Что нового сегодня
было на занятии?
3
Как ты думаешь, где еще ты бы
мог применить эти знания?
2
Какое задание было
сложным на твой взгляд?
4
Понравилась ли тебе
сегодняшняя тема?
English     Русский Правила