Sample code for 30+ languages & platforms
PowerShell

Download Web Page to MHT and Extract Images (all in memory)

See more MHT / HTML Email Examples

Downloads a web page to an MHT archive (in memory) and then extracts each image to a byte array in memory.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# Note: This URL exists at the time of writing and testing this example (on 12-June-2020)
# However, it will surely not continue to exist for very long.
# You should choose a different URL.  (Any web page with images will do.)
$url = "https://www.fendi.com/it/abbigliamento-uomo/cravatta-fxc160a3nwf0qg2"

$mht = New-Object Chilkat.Mht

# Downloads to an MHT string.
# MHT is just MIME, which is the same format as an email but with different semantics.
$mhtStr = $mht.GetMHT($url)
if ($mht.LastMethodSuccess -eq $false) {
    $($mht.LastErrorText)
    exit
}

# We can still treat the MHT MIME as an email and iterate over the "related items".
$email = New-Object Chilkat.Email
$success = $email.SetFromMimeText($mhtStr)
if ($success -eq $false) {
    $($email.LastErrorText)
    exit
}

$numRelatedItems = $email.NumRelatedItems
$i = 0
$sbContentType = New-Object Chilkat.StringBuilder
while ($i -lt $numRelatedItems) {
    $sbContentType.SetString($email.GetRelatedContentType($i))
    $("Content-Type: " + $sbContentType.GetAsString())

    if ($sbContentType.StartsWith("image/",$false) -eq $true) {
        # We have an image.
        # Get the image data.
        $imageData = $email.GetRelatedData($i)

        # Do what you need with the image data..
    }

    $i = $i + 1
}