ツイッターに自動ログイン・ログアウト処理

こちらは、エクセルVBAでツイッターに自動ログイン(ログアウト)する方法についての解説となります。VBAの知識がない方やツイッター自動ログイン(ログアウト)ツールをお求めの方には、無償で提供していますので「ツイッター自動ログインツール」よりダウンロードしてください。

今回は、ツイッターに自動ログイン(ログアウト)する方法について解説していきます。
ツイッターに毎回ログインするのが手間であったり、複数アカウントを保有している場合に簡単にログインしたいという方が多いのではないでしょうか。
こちらでは、ログインする基本部分について説明していますので、カスタマイズして目的にあったプログラムを構築してください。

スポンサー リンク

ツイッターに自動ログイン(ログアウト)のマクロ

Sub sample()

 Dim objIE As InternetExplorer

 'IEバージョン9以上
 If IeVerCheck > 8 Then

  'ツイッターログイン画面表示
  Call ieView(objIE, "https://twitter.com/login")

  'ログインチェック
  If objIE.LocationURL <> "https://twitter.com/login" Then

   'ツイッターログアウト処理
   Call ieNavi(objIE, "http://twitter.com/logout")
   Call tagClick(objIE, "button", "ログアウト")
   Call ieNavi(objIE, "https://twitter.com/login")

  End If

   'ツイッターログイン処理
   Call formText(objIE, "session[username_or_email]", "★ツイッターID★")
   Call formText(objIE, "session[password]", "★ツイッターPASS★")
   Call tagClick(objIE, "button", "ログイン")

 'IEバージョン8以下
 Else

  'ツイッターログイン画面表示
  Call ieView(objIE, "https://mobile.twitter.com/i/guest")

  'ログインチェック
  If objIE.LocationURL <> "https://mobile.twitter.com/i/guest" Then

   'ツイッターログアウト処理
   Call ieNavi(objIE, "https://mobile.twitter.com/account")
   Call tagClick(objIE, "input", "ログアウト")
   Call ieNavi(objIE, "https://mobile.twitter.com/i/guest")

  End If

   'ツイッターログイン処理
   Call formText(objIE, "username", "★ツイッターID★")
   Call formText(objIE, "password", "★ツイッターPASS★")
   Call tagClick(objIE, "input", "ログイン")

 End If

End Sub

※ドラッグ(スワイプ)すると全体を確認できます。

実行結果

ツイッター自動ログイン

それでは、1つずつ見ていきましょう。


'IEバージョン9以上
If IeVerCheck > 8 Then
 (省略)
'IEバージョン8以下
Else
 (省略)
End If

※ドラッグ(スワイプ)すると全体を確認できます。

まず、IEのバージョンをチェックする「ieVerCheck」を利用して、Webブラウザのバージョンで処理を分岐させています。
こちらはInternet Explorerのバージョンチェック「ieVerCheck」でも説明しましたが、バージョンが8以下のWebブラウザの場合、表示されないかもしくはモバイル版が表示されます。
PC版とモバイル版ではソース内容が異なりますので、最初に「IF~Thenステートメント」で処理を分けています。


'ツイッターログイン画面表示
Call ieView(objIE, "https://twitter.com/login")

※ドラッグ(スワイプ)すると全体を確認できます。

Webブラウザのバージョン9以上の場合をはじめに説明すると、ツイッターのログイン画面を表示させます。


'ログインチェック
If objIE.LocationURL <> "https://twitter.com/login" Then

 'ツイッターログアウト処理
 Call ieNavi(objIE, "http://twitter.com/logout")
 Call tagClick(objIE, "button", "ログアウト")
 Call ieNavi(objIE, "https://twitter.com/login")

End If

※ドラッグ(スワイプ)すると全体を確認できます。

ここでまた「If~Thenステートメント」を利用していますが、ログインが保持されている場合はログアウト処理をしなければいけません。こちらはその処理になります。

「LocationURLプロパティ」から現在表示されているURLを取得し、ログイン画面のURLかをチェックしています。
ログイン画面のURLでない場合は、ログアウト処理を行います。
パソコン版のログアウトは「http://twitter.com/logout」にアクセスすれば、ログアウト処理になりますので、「ieNavi」にて直接アクセスします。

次に指定したタグをクリックする「tagClick」でログアウトボタンをクリックしますが、先にHTMLソースを確認します。


<form action="/logout" class="t1-form signout" method="post">
 <input type="hidden" value="ae103045636cb35461b7d18d8230d32a9f9da586" name="authenticity_token">
 <h1>Twitter から<strong>ログアウト</strong>しますか?</h1>
 <div class="buttons-arrow"></div>
 <div class="buttons">
  <a href="/" class="btn cancel">キャンセル</a>
  <button type="submit" class="btn primary-btn js-submit">ログアウト</button>
 </div>
 <div class="aside">
  <p>
   いつでも取り消すことができます
  </p>
 </div>
</form>

※ドラッグ(スワイプ)すると全体を確認できます。

ログアウトはbuttonタグで設定されているのが分かりますね。
次に指定したタグをクリックする「tagClick」を利用して、buttonタグに「ログアウト」が含まれるタグをクリック処理します。
ログアウトが完了したら、再度「ieNavi」でログイン画面を表示されます。


'ツイッターログイン処理
Call formText(objIE, "session[username_or_email]", "★ツイッターID★")
Call formText(objIE, "session[password]", "★ツイッターPASS★")
Call tagClick(objIE, "button", "ログイン")

※ドラッグ(スワイプ)すると全体を確認できます。

こちらでは、ログインするための情報を入力し、ログインボタンをクリックしています。
こちらもHTMLソースを見てみましょう。


<form action="https://twitter.com/sessions" class="t1-form js-signin signin" method="post">
<fieldset>
<legend id="signin-form-legend" class="visuallyhidden">ログイン</legend>
<div class="textbox">
<label class="t1-label username js-username">
<span>電話番号、メールアドレスまたはユーザー名</span>
<input class="js-username-field email-input js-initial-focus" type="text" name="session[username_or_email]" autocomplete="on">
</label>
<label class="t1-label password js-password">
<span>パスワード</span>
<input class="js-password-field" type="password" value="" name="session[password]">
</label>
</div>

<div class="subchck">
<button type="submit" class="btn submit">ログイン</button>
<label class="t1-label remember">
<input type="checkbox" value="1" name="remember_me" checked="checked">
<span>保存する</span>
</label>
</div>

<input type="hidden" name="scribe_log">
<input type="hidden" name="redirect_after_login" value="">
<input type="hidden" value="a767ae60d59dbe0cab78d96d6e4c9cb331342c4d" name="authenticity_token"/>

</fieldset>
<div class="divider"></div>
<p class="footer-links">
<a class="forgot" href="/account/begin_password_reset">パスワードを忘れた場合はこちら</a><br />
<a class="mobile has-sms" href="/account/complete">既にテキストメッセージで Twitter をご利用ですか?</a>
</p>
</form>

※ドラッグ(スワイプ)すると全体を確認できます。

フォームのテキストボックスに入力する「formText」を利用して、inputタグに「session[username_or_email]」が含まれるテキストボックスへ「★ツイッターID★」を入力します。
次に、inputタグに「session[password]」が含まれるテキストボックスへ「★ツイッターPASS★」を入力します。
これで、ツイッターID/PASSが入力されました。
最後に「tagClick」を利用して、buttonタグに「ログイン」が含まれているタグをクリック処理をします。
これでログインが完了となります。

続いてIEのバージョンが8以下の場合を見ていきましょう。


'ツイッターログイン画面表示
Call ieView(objIE, "https://mobile.twitter.com/i/guest")

※ドラッグ(スワイプ)すると全体を確認できます。

ツイッターのログイン画面を表示させます。


'ログインチェック
If objIE.LocationURL <> "https://twitter.com/login" Then

 'ツイッターログアウト処理
 Call ieNavi(objIE, "https://mobile.twitter.com/account")
 Call tagClick(objIE, "input", "ログアウト")
 Call ieNavi(objIE, "https://mobile.twitter.com/i/guest")

End If

※ドラッグ(スワイプ)すると全体を確認できます。

こちらもバージョン9以上の処理と同様になります。
「LocationURLプロパティ」から現在表示されているURLを取得し、ログイン画面のURLかをチェックしています。
ログイン画面のURLでない場合は、ログアウト処理を行います。
モバイル版のログアウトは「https://mobile.twitter.com/account」にアクセスしログアウトボタンをクリックする処理になりますので、「ieNavi」にてアカウント管理画面にアクセスします。
次に指定したタグをクリックする「tagClick」でログアウトボタンをクリックします。
ログアウトが完了したら、再度「ieNavi」でログイン画面を表示されます。


'ツイッターログイン処理
Call formText(objIE, "username", "★ツイッターID★")
Call formText(objIE, "password", "★ツイッターPASS★")
Call tagClick(objIE, "input", "ログイン")

※ドラッグ(スワイプ)すると全体を確認できます。

こちらも同様にログイン処理をしていきます。
「formText」を利用して、inputタグに「username」が含まれるテキストボックスへ「★ツイッターID★」を入力します。
次に、inputタグに「password」が含まれるテキストボックスへ「★ツイッターPASS★」を入力します。
これで、ツイッターID/PASSが入力されました。
最後に「tagClick」を利用して、inputタグに「ログイン」が含まれているタグをクリック処理をします。
これでログインが完了となります。
次はこちらの自動ログイン処理のサブルーチン化について解説していきます。

VBAのIE操作でツイッター情報取得の目次

次の記事: VBAのIE操作でツイッター自動ログイン・ログアウト2 >>

Excel VBAでIEを思いのままに操作できるプログラミング術 Excel 2013/2010/2007/2003対応

近田 伸矢, 植木 悠二, 上田 寛

IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。

VBAのIE制御についてのQ&A掲示板

↑VBAのIE操作で分からない事があればこちらの掲示板よりご質問ください。

ExcelのVBA初心者入門

↑こちらはVBAをマスターできるよう初心者向けのエクセルVBA入門コンテンツになります。

目次

IE制御の応用編

こちらでは、エクセルVBAで実際に作成したIE(InternetExplorer)制御ツールをまとめています。自動ログインや情報収集など具体的に解説しています。IE(InternetExplorer)制御をされる方は参考にしてください。

IE操作に便利なツール

こちらでは、これまでに紹介したIE(InternetExplorer)操作で便利な機能をツール化しています。無償でダウンロードできますので、目的に合わせたご利用ください。

IEのメソッド・プロパティ

こちらでは、IE(InternetExplorer)オブジェクトのメソッド・プロパティをまとめています。

IE操作のVBA関数

こちらでは、エクセルVBAのIE(InternetExplorer)操作で利用されたVBA関数をまとめています。

IE操作のステートメント

こちらでは、エクセルVBAのIE(InternetExplorer)操作で利用されたステートメントをまとめています。ExcelのVBAで基本的な部分になりますので、しっかり理解しましょう。

IE制御のVBAコード

こちらでは、これまでに作成したIE(InternetExplorer)操作で役立つサブルーチンをまとめています。
全てをコピーする必要はありませんが、目的に合わせたサブルーチンをご利用ください。