Grab image links from HTML website using powershell Grab image links from HTML website using powershell powershell powershell

Grab image links from HTML website using powershell


You need to extract value that was a match. Select-String returns objects, and when you echo it, what happends is $pattern.ToString(). ToString() returns the line, and not the match-value. This will return all the links only:

Get-Content $webpagetxt | Select-String -pattern $regex -Allmatches | % { $_.Matches | % { $_.Value } }

Btw, instead of saving the webpage and reopen it with get-content, you can simply split the string on linebreaks to get an array(if that's was the only reason you saved it). :-)

$webpage -split "`n" | Select-String -pattern $regex -Allmatches | % { $_.Matches | % { $_.Value } }

EDIT To download it, you could just extend it with another foreach-loop:

$rootDir = "http://website.com/sport/galleries/"$saveDir = "C:\Users\user\Desktop\"$webpage -split "`n" | Select-String -pattern $regex -Allmatches | % { $_.Matches | % { $_.Value } } | % {    #Get local path    $local = $_.Replace($rootDir, $saveDir)    #Create path    $file = New-Item $local -ItemType file -Force    #Download    $wb.DownloadFile($_, $file.FullName)}


Select-String returns you an object with properties. Send it to Get-Member to see what goodies you have. You'll want to check out the matches property e.g. $pattern.matches. Check out example 9 in the documentation.