WordPressに自動ログイン(ログアウト)「wordpressLogIn」の解説
さてWordPressの自動ログイン(ログアウト)について説明してきましたが、今回は自動ログイン(ログアウト)をサブルーチン化させます。
こちらを利用することでどんなアカウントでも簡単にログイン処理をすることが可能になります。
WordPressに自動ログイン(ログアウト)のサブルーチン
Sub wordpressLogIn(objIE As InternetExplorer, _
wordpressURL As String, _
wordpressId As String, _
wordpressPass As String, _
Optional ieType As String = "ieView")
'IEでwordpress画面を起動
If ieType = "ieView" Then
Call ieView(objIE, wordpressURL)
ElseIf ieType = "ieNavi" Then
Call ieNavi(objIE, wordpressURL)
End If
'ログアウト処理
If tagCheck(objIE, "a", "ログアウト") = True Then
Call tagClick(objIE, "a", "ログアウト")
End If
'wordpressID自動入力
Call formText(objIE, "log", wordpressId)
'wordpressログインパスワード自動入力
Call formText(objIE, "pwd", wordpressPass)
'ログインボタンをクリック
Call tagClick(objIE, "input", "ログイン")
End Sub
WordPressに自動ログイン(ログアウト)のマクロ
Sub sample1()
Dim objIE As InternetExplorer
Call Call wordpressLogIn(objIE, "http://hp-pack.fsv.jp/sample/demo/wp-login.html", "demo", "demodemo")
End Sub
Sub sample2()
Dim objIE As InternetExplorer
Call ieView(objIE, "http://www.vba-ie.net/")
Call wordpressLogIn(objIE, "http://hp-pack.fsv.jp/sample/demo/wp-login.html", "demo", "demodemo", "ieNavi")
End Sub
実行結果
引数は以下の4つが設定されています。
引数名 | データ型 | 内容 | 値の事例 | 初期値 | 省略 |
---|---|---|---|---|---|
objIE | InternetExplorer | IEオブジェクト | objIE,objIE2 | × | |
wordpressURL | String | wordpress管理画面のURL | "http://hp-pack.fsv.jp/sample/demo/wp-login.html" | × | |
wordpressId | String | wordpressのログインID文字列 | "demo" | × | |
wordpressPass | String | wordpressのログインパスワード文字列 | "demodemo" | × | |
ieType | String | IEオブジェクトの状態文字列 | "ieView", "ieNavi" | "ieView" | ● |
「objIE」「wordpressURL」「wordpressId」「wordpressPass」は必須項目で、「objIE」は複数ページを表示させる場合に「objIE」「objIE2」と複数オブジェクトを生成します。
「wordpressURL」にはログインするwordpressの管理画面URLを設定します。
「wordpressId」にはwordpressのログインIDを、「wordpressPass」にはwordpressのログインパスワードを設定します。
次に「ieType」ですが、こちらはIEオブジェクトの状態によって、処理を分岐させるものです。
新規でIEオブジェクトを作成する場合は「ieView」を指定し、「ieViewサブルーチン」で処理します。
既存のIEオブジェクトがある場合は「ieNavi」を指定し、「ieNaviサブルーチン」で処理させます。
こちらは初期設定が「ieView」で設定させており、Optionalを付けて宣言した引数なので、省略することができます。
'IEでwordpress画面を起動
If ieType = "ieView" Then
Call ieView(objIE, wordpressURL)
ElseIf ieType = "ieNavi" Then
Call ieNavi(objIE, wordpressURL)
End If
End If
「ieType」で「ieView」「ieNavi」サブルーチンのどちらかでIEを起動しwordpressページを開きます。
'ログアウト処理
If tagCheck(objIE, "a", "ログアウト") = True Then
Call tagClick(objIE, "a", "ログアウト")
End If
こちらはログインしていた場合のログアウト処理ですが、「tagCheckサブルーチン」を利用してログアウトボタンがある場合は、そちらをクリックする処理をしています。
ちなみにログアウト部分のHTMLソースは以下になります。
'wordpressログイン処理
Call formText(objIE, "log", wordpressId)
Call formText(objIE, "pwd", wordpressPass)
Call tagClick(objIE, "input", "ログイン")
こちらでは、ログインするための情報を入力し、ログインボタンをクリックしています。「wordpressId」にはwordpressログインIDが、「wordpressPass」にはwordpressログインパスワードが格納されています。
あとはログインボタンをクリックし、ログイン完了です。
ここまでがwordpress自動ログインのサブルーチン化についての解説でした。
こちらの内容は前回とあわせて理解できたかと思います。
ID・パスワードを記録する機能が付いているので、ここだけの処理はあまり活用はないかもしれませんが、wordpressページなどの自動投稿機能を追加すると便利な機能になりますので、サブルーチンを利用して更に機能追加していってください。
次の記事: VBAでIE操作に便利なツールをダウンロード >>
近田 伸矢, 植木 悠二, 上田 寛
IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。