ツイッターに自動ログイン(ログアウト)「twLogIn」の解説

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

さてツイッターの自動ログイン(ログアウト)について説明してきましたが、今回は自動ログイン(ログアウト)をサブルーチン化させます。
前回の方法では、1アカウントしかログイン処理ができませんが、サブルーチン化させることで、どんなアカウントでも簡単にログイン処理をすることが可能になります。

スポンサー リンク

ツイッターに自動ログイン(ログアウト)のサブルーチン


Sub twLogIn(objIE As InternetExplorer, _
      twitterId As String, _
      twitterPass As String, _
      Optional ieType As String = "ieView")

 'IEバージョン9以上
 If IeVerCheck > 8 Then
    
  'ツイッターログイン画面表示
  If ieType = "ieView" Then
   Call ieView(objIE, "https://twitter.com/login")
  ElseIf ieType = "ieNavi" Then
   Call ieNavi(objIE, "https://twitter.com/login")
  End If

  'ログインチェック
  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]", twitterId)
  Call formText(objIE, "session[password]", twitterPass)
  Call tagClick(objIE, "button", "ログイン")

  'IEバージョン8以下
  Else
    
   'ツイッターログイン画面表示
   If ieType = "ieView" Then
    Call ieView(objIE, "https://mobile.twitter.com/i/guest")
   ElseIf ieType = "ieNavi" Then
    Call ieNavi(objIE, "https://mobile.twitter.com/i/guest")
   End If

   'ログインチェック
   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", twitterId)
   Call formText(objIE, "password", twitterPass)
   Call tagClick(objIE, "input", "ログイン")

  End If

End Sub

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


Sub sample1()

 Dim objIE As InternetExplorer

 Call twLogIn(objIE, "★ツイッターID★", "★ツイッターPASS★")

End Sub

Sub sample2()

 Dim objIE As InternetExplorer
    
 Call ieView(objIE, "http://www.vba-ie.net/")
    
 Call twLogIn(objIE, "★ツイッターID★", "★ツイッターPASS★", "ieNavi")

End Sub

実行結果

ツイッター自動ログイン

引数は以下の4つが設定されています。

引数名データ型内容値の事例初期値省略
objIEInternetExplorerIEオブジェクトobjIE,objIE2×
twitterIdStringツイッターのログインID文字列"★ツイッターID★"×
twitterPassStringツイッターのログインパスワード文字列"★ツイッターPASS★"×
ieTypeStringIEオブジェクトの状態文字列"ieView",
"ieNavi"
"ieView"
twLogIn("IEオブジェクト","ツイッターのログインID文字列","ツイッターのログインパスワード文字列","IEオブジェクトの状態文字列[省略可]")

「objIE」「twitterId」「twitterPass」は必須項目で、「objIE」は複数ページを表示させる場合に「objIE」「objIE2」と複数オブジェクトを生成します。
「twitterId」にはツイッターのログインIDを、「twitterPass」にはツイッターのログインパスワードを設定します。

次に「ieType」ですが、こちらはIEオブジェクトの状態によって、処理を分岐させるものです。
新規でIEオブジェクトを作成する場合は「ieView」を指定し、「ieViewサブルーチン」で処理します。
既存のIEオブジェクトがある場合は「ieNavi」を指定し、「ieNaviサブルーチン」で処理させます。
こちらは初期設定が「ieView」で設定させており、Optionalを付けて宣言した引数なので、省略することができます。


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

ほぼ前回と同様の内容ですので簡単に説明していくとまず、IEのバージョンをチェックする「ieVerCheck」を利用して、Webブラウザのバージョンで処理を分岐させています。


'ツイッターログイン画面表示
If ieType = "ieView" Then
 Call ieView(objIE, "https://twitter.com/login")
ElseIf ieType = "ieNavi" Then
 Call ieNavi(objIE, "https://twitter.com/login")
End If

「ieType」で「ieView」「ieNavi」サブルーチンのどちらかでツイッターのログイン画面を表示させます。


'ログインチェック
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]", twitterId)
Call formText(objIE, "session[password]", twitterPass)
Call tagClick(objIE, "button", "ログイン")
こちらでは、ログインするための情報を入力し、ログインボタンをクリックしています。
「twitterId」にはツイッターログインIDが、「twitterPass」にはツイッターログインパスワードが格納されています。

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


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

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


'ログインチェック
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以上の処理と同様でログインチェック後、ログアウト処理をしています。


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

こちらも同様にログイン処理をしていきます。
ここまでがツイッター自動ログインのサブルーチン化についての解説でした。
こちらの内容は前回とあわせて理解できたかと思います。
ツイッター操作には必須処理ですので、是非活用ください。

次の記事: VBAのIE操作でツイッターアカウント取得1-1 >>

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

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

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

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

↑エクセルVBAのIE(InternetExplorer)操作で分からない事があればこちらの掲示板よりご質問ください^^

ExcelのVBA初心者入門

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

VBAのIE制御入門RSS

RSSフィードを登録すると最新記事を受け取ることができます。

VBAIE操作のスカイプレッスン

VBAでIE(InternetExplorer)制御の準備

エクセル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(InternetExplorer)制御のVBAコード

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