EC-CUBE管理画面の自動ログイン処理
今回は、EC-CUBE管理画面に自動ログインする方法について解説していきます。
EC-CUBEと言えばECサイト構築のCMSとして有名ですが、今回はこちらの管理画面の自動ログインに挑戦していきます。
私もECサイトはいくつか保有していますが、管理画面操作はいつもエクセルVBAを利用して自動化させています。
管理画面のユーザーインターフェースは一般の方には優しいですが、所詮手作業になってしまいますので、毎回触る部分については、トータルすると結構な労力がかかっています。
効率化という点でも管理画面の自動化はかなり有効的な手段の1つです。
ただし、セキュリティを考慮してエクセル上でID・パスワードの情報は残さないようにしましょう。
EC-CUBE管理画面の自動ログインのマクロ
Sub sample()
'EC-CUBE管理画面のページを表示させる
Call ieView(objIE, "http://demo.ec-cube.net/admin/")
Call formText(objIE, "login_id", "admin")
Call formText(objIE, "password", "password")
Call tagClick(objIE, "a", "LOGIN")
End Sub
実行結果
今回は、EC-CUBE本家サイトのデモ管理画面を利用させてもらいます。
ログインに必要なIDとパスワードは以下となります。
- ID:admin
- パスワード:password
Call ieView(objIE, "http://demo.ec-cube.net/admin/")
まず、指定したURLをWebブラウザで表示させる「ieViewサブルーチン」を利用して、デモ版EC-CUBE管理画面を表示させます。
ログインHTMLソース
<form name="form1" id="form1" method="post" action="?">
<input type="hidden" name="transactionid" value="03464512eff7208376b9a9293d6aece406248980">
<input type="hidden" name="mode" value="login"><p><label for="login_id">ID</label></p>
<input type="text" name="login_id" size="20" class="box25"><p><label for="password">PASSWORD</label></p>
<input type="password" name="password" size="20" class="box25">
<p><a class="btn-tool-format" href="javascript:;" onclick="document.form1.submit(); return false;"><span>LOGIN</span></a></p>
</form>
Call formText(objIE, "login_id", "admin")
Call formText(objIE, "password", "password")
次にテキストボックス・テキストエリアに値を入力する「formTextサブルーチン」を利用して、name=login_idのテキストボックスに「admin」、name=passwordのテキストボックスに「password」を自動入力します。
こちらにご自身が運用されているEC-CUBEのID・パスワードを入力してください。
Call tagClick(objIE, "a", "LOGIN")
最後に指定したタグをクリックする「tagClickサブルーチン」を利用して、aタグ内に「LOGIN」の文字列があるaタグをクリックします。
これでログイン完了となります。
こちらはマクロに直接ID・パスワードを入力していますので、セキュリティの面で外部に漏られた非常に大変なことになりますので、次回のサブルーチン化とあわせて対応を解説していきます。
次の記事: VBAのIE操作でEC-CUBE自動ログイン2 >>
近田 伸矢, 植木 悠二, 上田 寛
IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。