1. はじめに
サービスへログインする際はIDやパスワードが必要になります。
職場では様々なサービスを使用しますが、それだとそのサービスの数だけID,パスワードを入力する必要があり面倒です。
なので今回は、IDやパスワードといった項目を自動で入力してくれるスクリプトを作成することでその手間を省いていきたいと思います。
2. 概要
<目標>
スクリプトを実行することにより、指定のWebサービスへ自動ログインする。
<メリット>
ログイン画面でのIDやpasswdの入力の手間を省く。
<実現方法>
IEのWebスクレイピングを行うVBスクリプトを作成することで実現。
3. VBSソースコード
以下スクリプトになります。
指定箇所をご自身の環境に合わせて変更して下さい。
IE自動ログインスクリプト
Option Explicit
Dim objIE
Dim el
Set objIE = CreateObject("InternetExplorer.Application")
objIE.Visible = True
'// IEを開く
'※ [example.com]をログインしたいサイトURLに変えてください
objIE.navigate "example.com"
'// ページが読み込まれるまで待つ
Do While objIE.Busy = True Or objIE.readyState <> 4
WScript.Sleep 100
Loop
'// a要素にログインがあったらクリックする
'※ 環境に合わせて【ログイン】を変えて下さい
For each el In objIE.document.Links
if instr(el.innerText,"ログイン") then
el.click
exit for
end if
next
'// ページが読み込まれるまで待つ
Do While objIE.Busy = True Or objIE.readyState <> 4
WScript.Sleep 100
Loop
'// IDとパスワードを入力する
'※ Elementを環境に合わせて変えて下さい
'※ valueをご自身のIDとpasswordに変えて下さい
With objIE.document
.getElementsByName("login_element")(0).Value = "login_id"
.getElementsByName("password_element")(0).Value = "password"
End With
Dim objbutton
'// button要素をコレクションとして取得
'※ Elementを環境に合わせて変えて下さい
Set objbutton = objIE.document.getElementbyid("button_id")
objbutton.click
4. まとめ
スクリプト実行の際、多少の画面遷移がありますがやはり自動でログインしてくれるというは便利なものです。
職場がIE環境の方は是非上記をスクリプトを試してみて下さい。
では以上で失礼します。