1

重複の可能性:
Pythonを使用してWindowsのクリップボードに文字列をコピーするにはどうすればよいですか?

誰かが私に例を作ったり、Pythonでアクティブなウィンドウに何かを貼り付ける方法を説明したりできますか?

4

1 に答える 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)
于 2010-06-16T06:16:16.823 に答える