Webページに自動ログインする その2@WSH
前回はキー入力をスクリプトにやらせる感じで自動ログインしてみたんだけども、ページによってはキー操作で押せないボタンなんかもあったりして、だったらボタンを直接押してみよう。というスクリプトを書いてみました。
このスクリプトを使ってXserverの管理画面に自動的にログイン出来ます。
ランダムに数字を入れなくちゃいけないページ以外、おそらくどんなページでも自動的にログイン出来るはずです。
前回と同じくソースをTXTに保存して拡張子をVBSに変更した後実行です。もちろんIDやパスワードは自分用に変更してくださいね。
'Xserver管理パネル自動ログインスクリプト
Option explicit
'オブジェクトの作成
Set IEObj = CreateObject("InternetExplorer.Application")Dim MemID,UsrPass,IEObj
'あなたのIDとパスワードを入力してください。
MemID = "memberid"
UsrPass = "password"'With XXXXでEnd WithまでXXXXを省略できるようになります。
With IEObj
.Visible = True
'URL
.Navigate "https://www.xserver.ne.jp/login/login.html"
'メニューバーを表示するかどうか。
.MenuBar = True
'ツールバーを表示するかどうか。
.ToolBar = 0
'画面の幅を指定します。
.Width =800
'画面の高さを調節します。
.Height = 640'画面が表示しきるまで待ちます。
While .Busy Or .ReadyState <> 4
Wend'"xxxx"の値にそれぞれの値を入れます。
.document.all.Item("memberid").Value = MemID
.document.all.Item("user_password").Value = UsrPass
'ボタンを押します。
.document.forms(0).submit()End With
Set IEObj = Nothing
今回のポイントは
.document.forms(0).submit()
このへんです。
nameの無いFormがあった場合、forms(0)こう指定しなければsubmitボタンが押せません。
例えばMixiに自動ログインする場合にはこうなります。
'Mixi自動ログインスクリプト
Option explicitSet IEObj = CreateObject("InternetExplorer.Application")
Dim Email,UsrPass,IEObj,StrHTML
Email = "hogehoge@hogehoge.com"
UsrPass = "hogehoge"With IEObj
.Visible = True
.Navigate "http://mixi.jp/"While .Busy Or .ReadyState <> 4
WendStrHTML = .document.body.innerHTML
If instr( StrHTML,"<!--//////////ログイン///////////-->" ) > 0 Then
.document.all.Item("email").Value = Email
.document.all.Item("password").Value = UsrPass
.document.forms(0).submit()
End IfEnd With
Set IEObj = Nothing
Set StrHTML = Nothing
追加@2007.03.05
既に認証済みの場合入力を回避するように追加
Popularity: 4%
トラックバック URI : http://pnpk.net/cms/archives/188/trackback/
【関連記事】