「Pythonでクリップボードの値を取得するにはどうしたら良いの?」
テキストエディターに書かれたテキストをコピーすると、クリップボードにテキストが保存されます。
そして他のアプリケーションにペーストすると、クリップボードに保存されていたテキストを貼り付ける事ができます。
クリップボードとは異なるアプリケーション間でのやり取りが可能な、一時的に保存できるメモリ領域の事。
Pythonには、このクリップボードに保存された値を取得できる外部モジュールがあります。
外部モジュール「pyperclip」
「pyperclip」は機能としてはとてもシンプルですが、使い勝手が良く何かと便利なモジュールです。
この記事ではPythonの外部モジュール「pyperclip」を使ったクリップボードの値を取得及び保存する方法を紹介します。
|
Pythonに外部モジュール「pyperclip」をインストール
Pythonのパッケージ管理ツール Pip でインストールします。
pathが通っている場合は
pip install pyperclip
又は
pathが通っていない場合は
python -m pip install pyperclip
でインストールします。
ここからダウンロードもできます。
⇒https://pypi.org/project/pyperclip/
|
Pythonでクリップボードの値を取得
テキストエディターなどでテキストを選択し、[Ctrl]+[c] 又は右クリックメニューから「コピー」を押すとクリップボードに選択した箇所のテキストが格納されます。
このクリップボードに格納されている値を取得する場合、以下のように書きます。
pyperclip.paste()
付箋のテキストをコピーしてクリップボードに格納します。
取得した文字列と文字数
クリップボードの値を取得してprintで出力してみたいと思います。
import pyperclip
clip_str = pyperclip.paste()
print(u"テキスト : {} \n文字数 : {}".format(clip_str, len(clip_str)))
説明:
クリップボードから取得したテキストとテキストの文字数を.formatで一緒にしてprint()で出力します。
結果:
クリップボードから取得したテキストとテキストの文字数が出力されました。
文字数 : 14
⇒[Python]文字列をreplace()・%演算子・format()で置き換える方法-MAYA アーティストのスクリプト入門-
DeepLを使った選択したテキストの文字数を確認する方法を紹介した記事です。
⇒Evernoteで選択した箇所だけの文字数を確認する方法
取得した文字列を編集
もちろんクリップボードから取得したテキストは他の文字列と同様に編集する事ができます。
「夏」を「秋」に差し替えます。
import pyperclip
clip_str = pyperclip.paste()
new_str = clip_str.replace(u"夏", u"秋")
print(new_str)
説明:
.replace()を使ってクリップボードから取得した文字列の”夏”を”秋”に置き換えました。
結果:
クリップボードから取得した文字列の「夏」が「秋」に差し替えられました。
⇒[Python]文字列をreplace()・%演算子・format()で置き換える方法-MAYA アーティストのスクリプト入門-
|
Pythonでクリップボードにコピー
クリップボードに格納された値を取得する場合は
pyperclip.paste()
でしたが、逆にクリップボードに値を格納する場合は以下の様に書きます。
pyperclip.copy(“”)
加工した文字列をクリップボードにコピー
import pyperclip
clip_str = pyperclip.paste()
new_str = clip_str.replace(u"夏", u"春")
pyperclip.copy(u"テキスト : {} \n文字数 : {}".format(new_str, len(new_str)))
説明:
クリップボードから取得した文字列を編集して、クリップボードに格納しました。
結果:
スクリプトを実行後、付箋の元になったテキストの下に[Ctrl]+[v] でペーストしました。編集されたテキストと文字列が貼り付けられました。
まとめ:クリップボードの値を取得するには「pyperclip」
Pythonでクリップボードの値を取得する方法を紹介しました。
クリップボードの値を取得する場合
pyperclip.paste()
クリップボードに値を格納する場合
pyperclip.copy(“”)
テキストファイルの文字列を[Ctrl]+[c]でコピーしてPythonスクリプトで使えるので意外に便利です。
「pyperclip」試してみてはどうでしょうか。
|
自宅からでもWeb制作・プログラミング・アプリ開発などが習得できるさまざまなコースをラインナップ。
非エンジニアでスキルを磨きたい方から、フリーランス、就職/転職を目指す方まで、専属のメンターがサポート。
最近は副業ブームもあり「 はじめての副業コース 」が人気です。
|
|
BTOパソコンの草分け的ブランドFRONTIER(フロンティア) 3DCG/動画編集/ゲーム用途に合わせてCPUやGPUなどパーツを自由に選べてコスパにもこだわる方にオススメ。 |
|
|
|
|
|
「Pythonでクリップボードの値を取得できる外部モジュール「pyperclip」」への1件のフィードバック
コメントは受け付けていません。