Автоматизируйте взаимодействие с графическим интерфейсом в Python с помощью библиотеки PyAutoGUI.
Автоматизируйте взаимодействие с графическим интерфейсом в Python с помощью библиотеки PyAutoGUI.

PyAutoGUI — отличный модуль для автоматизации взаимодействия с графическим пользовательским интерфейсом в приложениях Python. Он позволяет разработчикам имитировать ввод данных пользователем и автоматизировать повторяющиеся операции, что делает его идеальным для тестирования, ввода данных и других задач, требующих взаимодействия с графическим интерфейсом. PyAutoGUI — это кроссплатформенная библиотека, поддерживающая все основные операционные системы, такие как Windows, Linux и macOS.

В этом уроке мы научимся использовать Python из PyAutoGUI пакет для автоматизации GUI Взаимодействие. Начнем с установки PyAutoGUI Начните и научитесь его использовать. Затем мы углубимся в библиотеку таких функций, как клавиатура и управление. мышью и распознавание изображений. Попутно мы предоставим примеры, которые помогут продемонстрировать функциональность библиотеки и то, как она может упростить различные задачи.

К концу этого руководства читатели должны быть знакомы с PyAutoGUI и как его использовать в Python Автоматизация внутри приложения GUI взаимодействия имеют глубокое понимание. PyAutoGUI представляет собой сложный программный пакет,Являетесь ли вы разработчиком программного обеспечения, аналитиком данных,Или вы просто ищете способы оптимизировать свой рабочий процесс?,Все это поможет вам сэкономить время и повысить эффективность работы.

Теперь, когда мы знаем, что собираемся делать, давайте начнем!

начинать

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

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

Чтобы установить библиотеку PyAutoGUI, откройте терминал и введите следующую команду:

Язык кода:javascript
копировать
pip install scikit-surprise

После успешной установки пакета Установить можно начинать работу!

Автоматизируйте взаимодействие с графическим интерфейсом с помощью PyAutoGUI.

Теперь мы установили PyAutoGUI, давайте рассмотрим некоторые его функции и то, как они реализуются. GUI Взаимодействие.

Основное использование

Первое, что нам нужно сделать, это PyAutoGUI Модуль импорта из США Python Скрипт -

Язык кода:javascript
копировать
import pyautogui

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

управление с клавиатуры

typewrite() можно использовать для имитации ввода с клавиатуры в PyAutoGUI. Эта функция получает строку и имитирует ее ввод на клавиатуре. Например--

Язык кода:javascript
копировать
import pyautogui pyautogui.typewrite('Hello, World!')

Приведенный выше код создает впечатление, будто клавиатура набирает слова в предоставленном тексте.

Вы также можете использовать функцию hotkey() для имитации одновременного нажатия нескольких клавиш.

Язык кода:javascript
копировать
import pyautogui pyautogui.hotkey('ctrl', 'c')

Этот код будет эмулировать одновременное нажатие клавиш «ctrl» и «c», что аналогично копированию текста.

Аналогично, если вы хотите использовать PyAutoGUI имитировать вставку,Можетиспользоватьниже Скрипт Легко завершить。

Язык кода:javascript
копировать
import pyautogui pyautogui.hotkey('ctrl', 'v')

Управление мышью

Чтобы имитировать ввод данных мышью с помощью PyAutoGUI, мы можем использовать такие функции, как moveTo(), click() и dragTo(). Например -

import pyautogui

Язык кода:javascript
копировать
# Move the mouse to coordinates (100, 100) pyautogui.moveTo(100, 100) # Click the left mouse button pyautogui.click()

Этот код переместит мышь к координатам (100, 100) на экране, а затем щелкните левой кнопкой мыши.

Мы также можем использовать функцию dragTo() для имитации перетаскивания мыши. Например -

Язык кода:javascript
копировать
import pyautogui # Move the mouse to coordinates (100, 100) pyautogui.moveTo(100, 100) # Click and drag the left mouse button to coordinates (200, 200) pyautogui.dragTo(200, 200, button='left')

Этот код переместит мышь к координатам (100, 100), щелкните левой кнопкой мыши, а затем перетащите мышь к координатам (200, 200).

распознавание изображений

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

ФункцияlocateOnScreen() может использоваться для поиска изображения на экране. Этот метод принимает имя файла в качестве входных данных и возвращает координаты верхнего левого угла изображения, где оно впервые появляется на экране. Например--

Язык кода:javascript
копировать
import pyautogui # Locate the "start_button.png" image on the screen button_location = pyautogui.locateOnScreen('start_button.png') # Click the center of the button button_center = pyautogui.center(button_location) pyautogui.click(button_center)

Этот код найдет изображение «start_button.png» на экране и щелкните кнопку в центре.

полная программа

Это полный код -

Язык кода:javascript
копировать
import pyautogui # Simulate typing the text "Hello, World!" pyautogui.typewrite('Hello, World!') # Simulate pressing the "ctrl" and "c" keys at the same time pyautogui.hotkey('ctrl', 'c') # Simulate pressing the "ctrl" and "v" keys at the same time pyautogui.hotkey('ctrl', 'v') # Move the mouse to coordinates (100, 100)  # and click the left mouse button pyautogui.moveTo(100, 100) pyautogui.click() # Move the mouse to coordinates (100, 100)  # Click the left mouse button and drag to coordinates (200, 200) pyautogui.moveTo(100, 100) pyautogui.dragTo(200, 200, button='left') # Locate the "start_button.png" image on the screen  # and click the center of the button button_location = pyautogui.locateOnScreen('start_button.png') button_center = pyautogui.center(button_location) pyautogui.click(button_center)

в заключение

PyAutoGUI находится в Python. Автоматизация внутри приложений. Графический интерфейс взаимодействия. Отличный ресурс. Он упрощает процесс имитации повторяющихся операций пользовательского ввода, что делает его отличным решением для различных случаев использования (таких как тестирование, ввод данных и другие потребности в работе с графическим пользовательским интерфейсом).

В этом уроке мы узнали о PyAutoGUI изFeaturesиFunction, например Установитьи Основное использование、клавиатура Управление мышью и распознавание изображений. Разработчики могут воспользоваться этими функциями, понимая PyAutoGUI Полный потенциал для улучшения рабочих процессов и оптимизации приложений.

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

общий,PyAutoGUI предоставляет широкий спектр функций.,сделать это надеждой Автоматизация внутри приложения GUI взаимодействие разработчика Python из удобного инструментария. Разработчики могут использовать PyAutoGUI Экономьте время, повышайте производительность и улучшайте общее качество программы. Читателям рекомендуется прочитать официальную документацию, чтобы узнать больше о PyAutoGUI и его особенности из дополнительной информации.

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода