【问题标题】:Powershell download page in 0 milliseconds0毫秒内的Powershell下载页面
【发布时间】:2015-03-23 10:45:08
【问题描述】:

我在 powershell 中的脚本有一个奇怪的问题,我想检查下载页面的平均时间。我编写经常触发的脚本。但有时我的脚本会返回结果 0,这意味着它会在 0 毫秒内下载站点。如果我修改我的脚本以在下载时间约为 0 毫秒时将整个站点保存到文件中,它不会保存任何内容。如果我做错了什么,或者 powershell 函数不太准确,无法计算出如此“小”的时间,我会很有趣。

ps。其他“好”的结果大约是 4-9 毫秒。

这是我的脚本的一部分,它响应计算下载时间:

$StartTime = Get-Date
$PageDownload = $Request.DownloadString("mypage.com")
$TimeTaken = ((Get-Date) - $StartTime).TotalMilliseconds 

【问题讨论】:

    标签: powershell


    【解决方案1】:

    Get-Date 应该与系统时钟一样精确。

    可能正在进行网络缓存。不幸的是,无法从what I see elsewhere 禁用 WebClient 的缓存。 “做对了”的方法是用 TcpClient 类构造自己的 Http 请求,不过那也是pretty complex

    确保您没有被缓存的一种简单方法是将任意值作为 GET 请求。这是一个 hack,但通常足以欺骗缓存。所以,而不是:

    "http://mypage.com"
    

    你使用:

    "http://mypage.com?someUnusedValueName=$([System.Environment]::TickCount)"
    

    【讨论】:

      猜你喜欢
      • 2011-02-27
      • 2012-02-14
      • 1970-01-01
      • 2018-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-12
      • 2020-05-25
      相关资源
      最近更新 更多