いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Pythonメモ-15 (pyperclip, クリップボードとやり取り, copy, paste)

概要

最近よく使っている小さくて便利なモジュール。

機能としては、クリップボードとテキストデータをやり取りできるだけなのですが

私の場合、使い捨てスクリプト作っているときって、よく

  • なんか処理する
  • 結果をCSVとかテキストファイルとかに出力
  • エディタで開く
  • コピーする
  • なんかに貼り付ける

っていうのが多いので、このモジュール使うと

  • なんか処理する
  • 結果をクリップボードに入れているので、そのまま貼付け

って風に楽になります。

インストールは

pip install pyperclip

で終わりです。

利用する関数は copy(text) と paste() の二つだけです。

サンプル

import pyperclip as clip

# ---------------------------------------------------------------
# [link]
# https://github.com/asweigart/pyperclip
# http://pyperclip.readthedocs.io/en/latest/introduction.html
# ---------------------------------------------------------------
# pyperclip モジュールは、クリップボードとのテキストデータを簡単に
# やり取りできるモジュール。クロスプラットフォーム対応しているため
# windows, mac, linux で動作する。
# ---------------------------------------------------------------
# 利用する関数は、 copy() と paste() の二つだけ。
# ---------------------------------------------------------------
# 注意点として、やり取りできるのはテキストデータのみとなる。
# テキストデータ以外を操作したい場合は、各プラットフォームのAPIを叩く必要がある。
# (windowsの場合は、win32com とか)
# ---------------------------------------------------------------

# クリップボードにコピー
clip.copy('hello world from pyperclip')

# クリップボードから取得
clipboard_text = clip.paste()
pr('paste()', clipboard_text)

#
# この後、エディタ上で CTRL+V すると同じ文字列がペーストされる。
#

参考情報

GitHub - asweigart/pyperclip: Python module for cross-platform clipboard functions.

Introduction — Pyperclip 1.5 documentation


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。