• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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)
     }
    }
    
    

    您可能感兴趣的文章:
    • Windows Powershell 自动化变量
    • PowerShell ISE自动化简单示例
    • PowerShell 4.0实现自动化设置服务器
    上一篇:Windows Azure VM上配置FTP服务器
    下一篇:PowerShell小技巧之调用CloudFlare的SDK查询网站统计信息
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    PowerShell小技巧实现IE Web自动化 PowerShell,小,技巧,实现,Web,