powershellでselenium 構文等
powershellでseleniumを利用するための基本的な構文
DLLの読み込み
例:「WebDriver.dll」と「chromedriver.exe」はc:\seleniumフォルダに格納
$env:PATH += ";C:\Selenium" $chrome_object = New-Object "OpenQA.Selenium.Chrome.ChromeDriver"
指定したURLに移動する(例:http://google.com)
$chrome_object.url = "http://google.com"
HTMLソース中のNAMEタグを元にエレメントを特定し、指定する
例:name = “COMMIT”
$commit_button = $chrome_object.FindElementByName( "COMMIT" )
↑で指定したエレメントの操作(クリック)
$commit_button.click()
↑で指定したエレメントの操作(キー入力)
例:confirmedと入力
$commit_button.SendKeys("confirmed")
表示しているページのHTMLソース取得
$htmlsource = $chrome_object.pagesource
BASIC認証の突破方法
①URL移動時のURLにユーザ名とパスワードを直接表示することで突破可能
例:ユーザ名:user, パスワード:password, URL:http://something.com
http://user:password@something.com/
②「①」ではうまく認証できないケースがあり、その場合はPowershell(.NET Framework)の機能で直接ブラウザの認証画面にキー操作を行って対応
Start-Sleep -s 3 #3秒待つ [System.Windows.Forms.SendKeys]::SendWait("user") #ID入力 [System.Windows.Forms.SendKeys]::SendWait("{Tab}") #Tabキー送信 [System.Windows.Forms.SendKeys]::SendWait("password") #パスワード入力 [System.Windows.Forms.SendKeys]::SendWait("{Enter}") #Enterキー送信