Similar presentations:
П_М2_У6. PyAutoGUI. Управление клавиатурой
1.
2023Python
Тема занятия
PyAutoGUI.
Управление
клавиатурой
Изображение от Storyset на Freepik.com
2.
2023План
занятия
Python
Введение
Теория
С чего начать?
Практика Запись текста
Практика Автобег
Теория
Прочие возможности
Домашнее задание
Итоги
Изображение от Storyset на Freepik.com
3.
2023Python
Проверяем
домашнее задание
1. Трудности
3. Знания
Какие трудности возникли
при написании кода?
Какой информации не хватило
для выполнения задания?
2. Как думаешь
4. В процессе
Как можно было бы
избежать трудностей?
Что больше всего
понравилось/не понравилось
в процессе выполнения задания?
Изображение от Storyset на Freepik.com
4.
2023Введение
На этом занятии мы изучим новые методы
модуля PyAutoGUI, которые позволят нам
управлять нашей клавиатурой с помощью кода.
Поехали!
Python
5.
2023Теория
С чего начать?
Python
6.
2023Python
Теория
Мы уже знаем, что модуль PyAutoGUI
может управлять нашей мышкой, однако,
это не все его возможности. Он также умеет
брать под контроль нашу клавиатуру.
Изображение от Storyset на Freepik.com
7.
2023Теория
Используя мышку и клавиатуру вместе,
мы можем сделать более совершенные
программы для автоматизации.
Python
8.
2023Теория
Мы можем сделать автоматический
бег в игре или бота для любых
действий, связанных с клавиатурой.
Python
9.
2023Python
Теория
На работу с клавиатурой есть ограничения
— не все клавиши можно заставить нажиматься.
Изображение от Storyset на Freepik.com
10.
2023Python
Теория
Перечень всех доступных клавиш:
['\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.
2023Python
Практика
Hello!
Задание:
Давай попробуем написать слово
«hello», используя команду write().
Изображение от Storyset на Freepik.com
13.
2023Теория
А если по буквам? А если я хочу просто
нажать на клавишу, а не писать текст?
Тогда тебе пригодится метод press().
Помимо обычных букв, press() также
предназначен и для нажатия других клавиш
по типу «Caps Lock», «Enter» и др.
Python
14.
2023Python
Практика
По буквам
Задание:
Напиши текст «You Spin Me Round»
по буквам, после каждой буквы нажимай
«Enter». Пусть программа печатает в
текстовый документ.
Изображение от Storyset на Freepik.com
15.
2023Теория
Автобег
Python
16.
2023Python
Теория
А если я хочу держать клавишу?
Для этого существует метод
keyDown(). Он зажимает указанную
клавишу и держит её. Также существует
и обратный метод — keyUp().
Изображение от Storyset на Freepik.com
17.
2023Python
Практика
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.
2023Python
Практика
Помимо этого существует команда
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.
2023Python
Домашнее
задание
Улучшаем спам-бота
Используя второй аргумент
рyautogui.write(“...” interval=0.25), сделаем
спам-бота менее заметным для анти-спам программ.
Добавляем прыжок
Во многих играх прыжок увеличивает скорость бега,
поэтому добавим к автобегу постоянные прыжки.
Изображение от Storyset на Freepik.com
26.
2023Python
Итоги
1
Что нового сегодня
было на занятии?
3
Как ты думаешь, где еще ты бы
мог применить эти знания?
2
Какое задание было
сложным на твой взгляд?
4
Понравилась ли тебе
сегодняшняя тема?