Pythonでパスワード生成&クリップボードへコピー wxPython編
前回のエントリで、パスワードを生成してクリップボードにコピーするプログラムを書きました。今回も同じ機能を持つプログラムを書きました。前回はWIN32APIをつかってクリップボードを操作しましたが、今回はクロスプラットフォームのGUIライブラリであるwxWidgetsのPythonばいんディングのwxPythonにあるwx.Clipboardクラスを使って操作しました。動作はwinXPで確認したけどmacやlinuxでも多分動く。
#! /usr/local/bin/python2.6 # coding: utf-8 # wx.Clipboardクラスを使ったkeygenerate.pyのrewrite # # n文字のパスワードを作成する。 # 最後にプロンプトを出してクリップボードにデータをコピーする。 from sys import exit from random import choice from string import lowercase, uppercase, digits import string import wx app = wx.PySimpleApp() n = 10 lst = lowercase + uppercase + digits pwd = "".join(choice(lst) for i in range(n)) print pwd prompt = raw_input(u"copy to clipboard? [y/n]") if prompt == "y": cboard = wx.Clipboard() if not cboard.Open(): print "fail..." raw_input() sys.exit() cboard.SetData(wx.TextDataObject(pwd)) cboard.Flush() cboard.Close() print "done"