我试图通过登录电子邮件来自动激活帐户的过程,当我没有使用以下代码在商业网络上时,我可以使用它。
$username = "user"
$password = "pass"
$url = "url"
$ie = New-Object -com InternetExplorer.Application
$ie.visible=$true
$ie.navigate($url)
while ($ie.Busy -eq $true){Start-Sleep -seconds 1;}
$usernamefield = $ie.Document.getElementByID('UsernameTextBox')
$usernamefield.value = $username
$passwordfield = $ie.Document.getElementByID('PasswordTextBox')
$passwordfield.value = $password
$ie.document.getElementById("ctl00_ContentPlaceHolder1_SubmitButton").click()`
我的问题是,一旦连接到业务网络,它就会使用SSO登录,因此我无法选择输入用户名和密码。为了能够输入用户名和密码,我需要以私人模式启动IE。我已经能够使用start-process命令私下启动IE,但是我找不到选择窗口来输入用户名和密码的方法。
有没有办法可以使用PowerShell在私人浏览器中登录网站?
答案 0 :(得分:2)
您可以通过启动过程启动私有IE的句柄,如您所述。
Start-Process -FilePath "C:\Program Files (x86)\Internet Explorer\iexplore.exe" -ArgumentList ' -private http://bogus.bogus'
然后你可以通过找到它来连接它 -
$Shell = New-Object -Com Shell.Application
$apps = $shell.windows()
$ie = $apps | where { $_.locationname -eq 'http://bogus.bogus/' }
快乐的脚本。 :)