PowerShell:
下载网页

How to: (如何操作:)

PowerShell 里,用 Invoke-WebRequest 可以下载网页。简单例子:

$url = "http://example.com"
$output = "C:\myfolder\example.html"
Invoke-WebRequest -Uri $url -OutFile $output

下载后,example.html 将包含网页的全部内容。

Deep Dive (深入了解)

Invoke-WebRequest 是 PowerShell 3.0 引入的,用来发送 HTTP 请求。历史上,我们可能用 WebClientHttpWebRequest。不过,Invoke-WebRequest 更简洁。

它不只下载页面,还能抓取链接、表单等。还支持 HTTP 动词如 GET、POST。

比如,登录网站:

$loginInfo = @{
    username = 'yourname'
    password = 'yourpassword'
}
Invoke-WebRequest -Uri 'http://example.com/login' -Method Post -Body $loginInfo

实现上,它依赖 .NET Framework 或 .NET Core 的网络功能。

See Also (另请参阅)