【Powershell】Powershellでラジオボタンを押したり更新したり【IE】
Powershellで、下記のようなことをしたかった。
まぁ用途は言えないけれど、この3つの組み合わせが、PC起動時にできればいいなぁ~・・・という思いから調べてみたその、記録。
・ブラウザのラジオボタンをクリックしたい
・ブラウザにあるボタンを押したい
・ブラウザのテキストボックスに文字入れたい
とりあえず、テスト用に置いておく
【ラジオボタン】【テキストボックス】【ボタン】
$ie = new-object -com InternetExplorer.Application $ie.visible=$true $ie.navigate("http://o-mizu.hatenablog.com/entry/2017/02/20/000832") # IEを立ち上げて待機 While($ie.Busy) { Start-Sleep -milliseconds 100 } # 情報取得 # ラジオボタンでgoogleを選択 $doc = $ie.document foreach ($Item in $doc.getElementsByName("radio_group")) { $Valude = $Item.value if ($Valude -eq "google") { $Item.Checked = $True } } # テキストボックスにyahooをセット foreach ($Item in $doc.IHTMLDocument3_getElementsByName("fullname")) { $Item.value = "yahoo" } # ボタンを押す $btn = $doc.IHTMLDocument3_getElementByID("srchbtn") $btn.click() # IEを閉じる $ie.Quit()
※
①このブログをIEで開いて、
②googleのラジオボタンセットして、
③テキストボックスにyahooセットして、
④ボタンを押して、
⑤IEを閉じる
あとがき
ブログを書き続ければ文章作成能力あがるかなと、淡い気持ちで始めました。
プログラマなので、そんな話とか・・・・アニメの話とか・・・
苦戦した・・・・
このコードよりよい書き方もあると思います。
っというか、htmlで書かれたボタンの種類がなんかたくさんあってうまくいくボタンで記載してます。
もっといろんなボタン反応させたい。
あなたも、このページで試してみたらいいと思う。
あと、IDとかNameで取得する処理が・・・調べたコードとことなる・・・・
IHTMLDocument3_getElementByID ← 調べてもあんまり出てこないし・・・
はてな記法にPowerShellが見つからない・・・CS指定にした。
PowerShellはデフォルトのPowerShellISEじゃなく、VisualStudioCodeがイイ!
環境:
windows10
PowerShellはデフォルトなのでたぶん5
VSCodeで実行してます。