Python tkinter でクリップボードのデータを扱う

先日 VBScript で作ったツールとほぼ同じものを Python でも作ってみました。

というか、もともとは Python で書いたちょっとしたスクリプトがあってそれをもう少し発展させたものが欲しいというのが出発点でした。 最初は Python で実現できないかなとやっていたのですが、自分だけでなく社内で共用する可能性を考えると Windows マシンなら標準で動く VBScript の方が適していると思ってそちらに舵を切ったのです。

で、Python でも調べていて、クリップボードのデータを扱うのには tkinter を使うのが手軽そうでした。

import tkinter

root = tkinter.Tk()

# ウィンドウの表示を抑制
root.withdraw()

# クリップボードから読み込み
cb = root.clipboard_get()

こんな感じで OK でした。クリップボードにデータをセットするのも root.clipboard_append() でできるらしいのですが、私の環境ではうまくいきませんでした。