Powershell 3.0 introduced Invoke-WebRequest cmdlet which offers a lot of options regarding HTTP requests. Rather then repeating the documentation and other sources, I’m going to show a simple example – the script below finds some specific links in the given web page and download them. It uses Invoke-WebRequest for both getting (and parsing) the web page and downloading files.
$url = 'http://blogs.msdn.com/b/briankel/archive/2011/09/16/visual-studio-11-application-lifecycle-management-virtual-machine-and-hands-on-labs-demo-scripts.aspx' cd c:\temp\ $site = Invoke-WebRequest -Uri $url $links = $site.Links | where href -like "http://download.microsoft.com*" | select -expand href $links | % { Invoke-WebRequest -Uri $_ -OutFile (Split-Path $_ -Leaf) }