キャンペーン実施中!日本ファースト証券資料請求で
COCO壱番館500円飲食券
を1枚プレゼント
↓より資料請求いただき、
こちらのフォームより(1)資料請求日、(2)送付先の住所・お名前を連絡ください
YahooログインId切替シェル作ったよWSHとHTMLのGUI活用例
YahooログインId切替をブラウザに一覧表示したIdのクリックで自動化します。複数お持ちでログイン・ログオフが面倒な方ご利用ください
その他IE操作自動化、ブラウザにGUI見たいな操作を簡単にさせることができる例です
こちらは
表示中のIEの画面を操作するためのVBのソースを生成
の適用例です。若干WSH用に修正してます。指定内容を変えたいときは操作コードを出力して、下記のソースを修正してください
■Windows/XP,IE6で動作確認済み
■使いかた
1.準備:YahooId.txtの名前でIDとパスワードのファイルを作る
規則は下記の例のように1行ごとにIdとパスワードをスペースで区切り並べる
YahooId1 passwaord1
Yahooid2 password2
2.拡張子.vbsで適当なファイルを作成する
3.このvbsファイルをエディタで開く
4.下記ソーズをコピー、上記で開いた.vbsのファイルに貼り付ける
5.ソース中にユーザID、パスワードを入力。(下記ソースの"←"のコメントのところ)
6.保存・終了する
7.このvbsファイルを実行(ダブルクリック)
8.Id一覧と対応するラジオボタンが表示される
7.切替後のIdをクリックする→現在のIdログオフと選択したIdのログインが行われる
8."終了"のチェックをクリックするとこのシェル終了
■ソース
Dim objIE0 Dim objIE1 Dim s,uid(10),passwd(10) Const ForReading = 1,ForWriting = 2,ForAppending = 8 '定数の指定 Set Fs = WScript.CreateObject("Scripting.FileSystemObject") Set oTs1 = Fs.OpenTextFile("YahooId.txt",ForReading) 'ファイルを読み取りモードで開く" uid_c=0 Do Until oTs1.AtEndOfStream 'oTs1を末端まで読み込むまでループを繰り返す sLine = oTs1.ReadLine '1行読み込む uid(uid_c)=left(sLine,instr(sLine," ")-1) passwd(uid_c)=right(sLine,len(sLine)-instr(sLine," ")) uid_c=uid_c+1 Loop oTs1.Close Set objIEx = CreateObject("InternetExplorer.application") objIEx.Navigate "about:blank" Do While objIEx.Busy WScript.Sleep 100 Loop objIEx.Width=600 objIEx.Height=500 objIEx.Visible = true objIEx.StatusBar = True objIEx.StatusText = t_date & " htm作成中" objIEx.ToolBar = false objIEx.MenuBar = false for i=0 to uid_c - 1 objIEx.Document.Write "
" & uid(i) & "
" next objIEx.Document.Write "終了
" & "
" mae=-1 do do WScript.Sleep 100 for uid_i=0 to uid_c - 1 if objIEx.Document.all.quit.checked=true then objIEx.Visible = False Set objIEx = nothing WScript.quit end if 'if objIEx.Document.all.uid.checked=true then if objIEx.document.all.tags("INPUT").item(uid_i).checked=true then if mae=-1 then exit do else if mae<>uid_i then exit do end if end if end if next loop mae=uid_i Set objIE0 = CreateObject("InternetExplorer.Application") objIE0.Visible = True objIE0.Navigate "http://www.yahoo.co.jp/" call waitPage(objIE0) logout=false for i=0 to objIE0.Document.links.Length - 1 if objIE0.Document.links(i).outertext="ログアウト" then objIE0.Document.links(i).click call waitPage(objIE0) logout=true exit for end if next objIE0.Navigate "https://login.yahoo.co.jp/config/login?.src=www&.done=http://www.yahoo.co.jp" call waitPage(objIE0) objIE0.document.all.login.value=uid(uid_i) ' text index=22 objIE0.document.all.passwd.value=passwd(uid_i) ' password index=23 'objIE0.document.all.save.click ' submit .save ログイン or tags("INPUT").item(25).Click objIE0.document.all.tags("INPUT").item(25).Click loop Sub waitPage (objIE) Do While objIE.busy Loop Do While objIE.Document.readyState <> "complete" Loop End Sub Function link_click(objIE, typ, v) link_click = -1 if typ="num" then objIE.document.links(v).Click Call ie_wait(objIE) link_click = 0 else For i = 0 To objIE.document.links.Length - 1 If typ = "text" Then If objIE.document.links(i).outertext = v Then objIE.document.links(i).Click Call waitPage(objIE) link_click = 0 Exit For End If End If If typ = "href" Then If objIE.document.links(i).href = v Then objIE.document.links(i).Click Call waitPage(objIE) link_click = 0 Exit For End If End If If typ = "href_inc" Then If InStr(objIE.document.links(i).href, v) > 0 Then objIE.document.links(i).Click Call waitPage(objIE) link_click = 0 Exit For End If End If Next end if End Function
■免責うんぬん
・本VBSによる使用者の損害どうのこうの補償は作成者は一切関知しません
使用者の責においてご利用ください
質問・要望はこちらから
その他WSH,EXCEL VBAの活用例紹介しています
こちらのオークションでプログラミングの書籍を出品してます