【python】ツイッターを操作する②【GUIでボタンやラベルを表示してみる】

スポンサーリンク





前回pythonからchromeを実行してツイッターにログインするところまでやりました。

ログインするだけではpythonでする必要もないので今度はツイッターをpythonで操作することにします。その為の準備としてGUIでボタンやラベルなどを表示するウィンドウを作成します。

★やりたいこと

  1. 自動ログイン
  2. 自動フォローとアンフォロー
  3. 自動ツイート

上記3点をpythonでやりたいと思います。この機能を設定するウィンドウを作成します。
① プログラム(ウィンドウ表示)

まずはウィンドウを表示します。

pythonでウィンドウを作成する場合は「tkinter」を必ずインポートします。

これがないとGUI出来ません。

後は

「win.titele」でウィンドウのタイトル

「wind.geometry」でウインドウのサイズ(255×415)と表示位置(+100+10)
ウィンドウのサイズ変更する必要もないし、させたくないので「win.resizable(0,0)」でサイズ変更の指定します。

「win.mainloop()」でウィンドウを表示します。

ハイ、これでウィンドウの表示はOK!!

次にボタンやラベルをウィンドウに配置します。

② プログラム(ラベル表示)

ウィンドウ内にラベルやボタン等を配置します。

他の言語と同様にpythonも色々なボタンやテキストボックスといったウィジェットと呼ばれる物が使用できます。
今回はそのうち以下のものを使用します。

ラベル Label  各種文言を表示
テキストボックス Entry IDやパスなどのテキスト入力
チェックボックス Checkbutton フォロー、アンフォーローの選択肢
スピンボックス Spinbox ツイート間隔の時間選択
ボタン Button 実行、終了ボタン

各ウィジェットを作成したウィンドウ内に配置していきます。
共通として配置には「place」を使用します。

このようにplace(X=**,y=**)と指定することでウィンドウ内の座標位置にウィジェットを配置します。
基本はそれぞれのクラスオブジェクトを作成して、placeで配置していく感じになります。

他人に見られたくないパスワード入力と1分単位で指定する意味があまりなさそうな自動ツイート間隔の部分はちょっと手を加えます。

●パスワード入力用テキストボックス

多くのパスワード入力のテキストボックスは文字が「*」となっています。同様に表示させるために「show=’*’」と指定することで実現します。

●自動ツイート間隔選択スピンボックス

大体30分刻みで選択する感じにして30から180まで選択可能にします。他の時間を指定する場合は直接入力するようにします。

「interval」という変数に値を設定し、「spinbox」の「value」に設定することで変数の値のみが選択可能になります。

●自動フォローチェックボックス
自動フォローは常に実行したいのでチェックボックスを常時チェックします。

ちょっと面倒なのですが

「BooleanVar」型の変数を作成し(この場合「valfolow 」)その変数にset(True)という形で値をセットします。
その変数を「Checkbutton」の「variable」に設定することでチェックボックスがチェックされた状態になります。
そんな事をしなくても最初から「variable」に「True」じゃダメなのか?と思いますが実際にすると出来ません。
これはpythonの仕様ということであきらめるしかないようです。

そんな感じで各ウィジェットを配置していって出来た画面がこんな感じになります。

ハイ、出来たー!!

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
%d人のブロガーが「いいね」をつけました。