Мне нужно сделать некоторые макросы, и я хочу знать, что это самый рекомендуемый способ сделать это.
Итак, мне нужно написать что-то и щелкнуть несколько мест с ним, и мне нужно подражать клавише TAB.
Мне нужно сделать некоторые макросы, и я хочу знать, что это самый рекомендуемый способ сделать это.
Итак, мне нужно написать что-то и щелкнуть несколько мест с ним, и мне нужно подражать клавише TAB.
Я делаю автоматическое тестирование на Python. Я имею тенденцию использовать следующее:
http://www.tizmoi.net/watsup/intro.html
Изменить: Ссылка мертва, архивная версия: https://web.archive.org/web/20100224025508/http://www.tizmoi.net/watsup/intro.html
http://www.mayukhbose.com/python/IEC/index.php
Я не всегда (почти никогда) не моделирую нажатия клавиш и движения мыши. Обычно я использую COM для установки значений объектов Windows и вызова их методов .click().
Вы можете отправить сигналы нажатия клавиш с помощью этого параметра:
import win32com.client
shell = win32com.client.Dispatch("WScript.Shell")
shell.SendKeys("^a") # CTRL+A may "select all" depending on which window focused
shell.SendKeys("{DELETE}") # Delete selected text? Depends on context. :P
shell.SendKeys("{TAB}") #Press tab... to change focus or whatever
Это все в Windows. Если вы находитесь в другой среде, я понятия не имею.
Возможно, вы ищете Sendkeys?
SendKeys - это модуль Python для Windows, которая может отправлять одну или несколько комбинаций клавиш или комбинаций клавиш в активное окно.
кажется, что это только окна
Также у вас есть pywinauto (скопирован из моего SO ).
pywinauto - это набор open-source (LGPL) для использования Python в качестве GUI "драйвер" для Windows NT (NT/W2K/XP).
и пример с веб-страницы
> from pywinauto import application
> app = application.Application.start("notepad.exe")
> app.notepad.TypeKeys("%FX")
> app.Notepad.MenuSelect("File->SaveAs")
> app.SaveAs.ComboBox5.Select("UTF-8")
> app.SaveAs.edit1.SetText("Example-utf8.txt")
> app.SaveAs.Save.Click()
pyautogui - отличный пакет для отправки ключей и автоматизации нескольких задач, связанных с клавиатурой и мышью. Проверьте Управление клавиатурой и мышью с помощью GUI Automation и Документация PyAutoGUIs.
Вы можете использовать библиотеку PyAutoGUI для Python, которая работает на Windows, macOS и Linux.
Вот простой код для перемещения мыши в середину экрана:
import pyautogui
screenWidth, screenHeight = pyautogui.size()
pyautogui.moveTo(screenWidth / 2, screenHeight / 2)
Страница документов: Функции управления мышью.
Похожие вопросы: Управление мышью с помощью Python.
Пример:
pyautogui.typewrite('Hello world!') # prints out "Hello world!" instantly
pyautogui.typewrite('Hello world!', interval=0.25) # prints out "Hello world!" with a quarter second delay after each character
Страница документов: Функции управления клавиатурой.
Дополнительная информация: Управление клавиатурой и мышью с помощью GUI Automation (глава 18 электронной книги).
Похожие вопросы: