PowerShell小技巧实现IE Web自动化

发布时间:2022-04-19 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了PowerShell小技巧实现IE Web自动化脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

Windows 系统自带internet Explore +加上PowerShell 即可搞定

今天就分享下这几天自己写的几个小函数,欢迎拍砖:

#
# 打开IE窗口
#
function New-iEWindow
{
  param(
  [string]$Url,
  [swITch]$Visible,
  [switch]$FullScreen
  )
  $Global:IEHost = new-object -com "InternetExplorer.Application"
  $Global:IEHost.navigate($Url)
 
  #设置IE可见性和全屏
  $Global:IEhost.Visible= $Visible
  $Global:IEHost.FullScreen= $FullScreen
   
}
 
#
#等待IE加载完毕
#
function Wait-IEReady([int]$TimeoutSeconds=10)
{
  $milliseconds=0
  $maXMilliseconds = $TimeoutSeconds * 1000
  while($Global:IEHost.Busy)
  {
    
   if($milliseconds -gt $maxMilliseconds)
   {
    throw 'Wait ie ready timeout.'
   }
   sleep -Milliseconds 100
   $milliseconds+=100
    
  }
}
 
#
# 根据ID,Class,Name,Tag获取HTML元素
#
function Get-HtmlElement ($Id,$Name,$Class,$Tag)
{
 if($Id)
 {
  return $IEHost.Document.getElementById($id)
 }
 elseif($Name)
 {
  return $IEHost.Document.getElementsByName($Name)
 }
 elseif($Class)
 {
  $IEHost.Document.all | where {$_.classname -contains $Class}
 }
 elseif($Tag)
 {
  $IEHost.Document.getelementsbytagname($Tag)
 }
  
}
 
#
#关闭IE窗口
#
function Close-IEWindow
{
  $Global:IEHost.quit()
  Remove-VARiable IEHost -Force
}
 
#
#设置IE的地址
#
function Navigate-IE($Url)
{
 Set-IE -URL $Url
}
 
#
# 设置IE的地址,或者动作:前进,倒退,刷新
#
function Set-IE
{
 param(
 [ValidateSet('GoBack', 'GoForward','Refresh')]
 [string]$Action,
 [uri]$URL
 )
 
 # 动作
 switch($Action)
 {
 ('GoBack'){ $Global:IEHost.GoBack() }
 ('GoForward'){ $Global:IEHost.GoForward() }
 ('Refresh'){ $Global:IEHost.Refresh() }
 }
 
 # 设置IE地址
 if( $URL) {
 $Global:IEHost.Navigate($URL) }
}
 
#
# 在IE窗口中执行脚本
#
function Invoke-IEScript($Code,$Language='Javascript')
{
 if( -not [string]::IsNullOrWhiteSpace($Code))
 {
 $Global:IEHost.Document.parentWindow.execScript($Code,$Language)
 }
}

脚本宝典总结

以上是脚本宝典为你收集整理的PowerShell小技巧实现IE Web自动化全部内容,希望文章能够帮你解决PowerShell小技巧实现IE Web自动化所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。