如何在Python中将字符串粘贴到活动窗口?
可能重复的问题:
我该如何使用Python将字符串复制到Windows的剪贴板上?
有人能给我举个例子,或者解释一下我怎么用Python把东西粘贴到当前活动窗口吗?
1 个回答
2
最简单的方法是使用 SendKeys 这个包。你可以在这里找到适用于不同Python版本的Windows安装程序 链接。
最简单的用法,就是发送普通文本,这个非常简单:
import SendKeys
SendKeys.SendKeys("Hello world")
你可以使用键码来表示一些无法打印的字符,做很多有趣的事情:
import SendKeys
SendKeys.SendKeys("""
{LWIN}
{PAUSE .25}
r
Notepad.exe{ENTER}
{PAUSE 1}
Hello{SPACE}World!
{PAUSE 1}
%{F4}
n
""")
想了解更多详细信息,请阅读 文档。
如果你出于某种原因不想依赖一个非标准的库包,你可以使用COM来实现同样的功能:
import win32api
import win32com.client
shell = win32com.client.Dispatch("WScript.Shell")
shell.Run("calc")
win32api.Sleep(100)
shell.AppActivate("Calculator")
win32api.Sleep(100)
shell.SendKeys("1{+}")
win32api.Sleep(500)
shell.SendKeys("2")
win32api.Sleep(500)
shell.SendKeys("~") # ~ is the same as {ENTER}
win32api.Sleep(500)
shell.SendKeys("*3")
win32api.Sleep(500)
shell.SendKeys("~")
win32api.Sleep(2500)