Автоматизируйте операции с графическим интерфейсом Windows с помощью Python - PullRequest
12 голосов
/ 01 марта 2010

Я хочу создать скрипт на Python, который автоматизирует процесс настройки VPN-сервера в Windows XP, но я знаю, как это сделать, используя диалоги Windows GUI. Как мне узнать, что эти диалоги делают с системой, и разработать скрипт Python для его автоматизации?

Ответы [ 6 ]

13 голосов
/ 04 января 2012

Вы также можете использовать pywinauto для автоматизации графического интерфейса.

Редактировать: Кажется, теперь есть графический интерфейс для создания сценариев, swapy .

4 голосов
/ 19 ноября 2012

Вы можете попробовать использовать Automa - это инструмент автоматизации Windows, который можно использовать в качестве библиотеки Python:

from automa.api import *

И затем вы можете использовать такие команды, как старт (..), нажмите (..) и введите (..), которые работают с пользовательским интерфейсом. Вы также можете использовать инструмент как отдельное приложение из собственного окна консоли. Если имя элемента GUI не очевидно, Automa предлагает функцию get_name_under_mouse () - вы можете навести указатель мыши на любой элемент GUI, чтобы узнать его имя.

Раскрытие информации: я участвую в разработке Automa

2 голосов
/ 01 марта 2010

Взгляните на SIKULI - были некоторые сообщения о неидеальной работе в Windows, но действительно легко поиграться и получить простой скрипт и запустить.

1 голос
/ 01 марта 2010

Узнайте, как делать то, что вы хотите, используя команды (в командной строке), и вместо этого запишите эти команды.

1 голос
/ 01 марта 2010

Вы можете использовать SendKeys для отправки нажатий клавиш в рассматриваемые диалоги и несколько дополнительных приемов , если вам также нужны действия мыши.

Или вы можете использовать StraceNT для мониторинга всех системных вызовов, выполняемых при ручном переходе по диалоговым окнам, и воспроизводить их на Python с помощью расширений Python win32 или ctypes .

0 голосов
/ 05 октября 2014

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

pip install pyautogui

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...