Sample code for 30+ languages & platforms
PowerShell

Extract data:image/png;base64 from HTML

See more Base64 Examples

Demonstrates how to extract base64 image data from HTMl and save to files.

Chilkat PowerShell Downloads

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

$success = $false

$sb = New-Object Chilkat.StringBuilder
$bd = New-Object Chilkat.BinData
$sbFilename = New-Object Chilkat.StringBuilder
$index = 1

$success = $sb.LoadFile("qa_data/html/oresp body.txt","utf-8")
# Assume success.
$("length = " + $sb.Length)

$mayHaveMore = $true
while ($mayHaveMore -eq $true) {

    # Get the base64 between the 1st occurrence "data:image/png;base64," and "'"
    $sBase64 = $sb.GetBetween("data:image/png;base64,","'")

    # If nothing is found, then we'll exit the loop because there are no more.
    $mayHaveMore = $sb.LastMethodSuccess

    if ($sb.LastMethodSuccess -eq $true) {
        # Found something.
        # Load into bd and save.
        $success = $bd.LoadEncoded($sBase64,"base64")

        $sbFilename.SetString("qa_output/png_")
        $sbFilename.AppendInt($index)
        $sbFilename.Append(".png")

        $bd.WriteFile($sbFilename.GetAsString())

        # Replace "data:image/png;base64" with "data:image-png;base64" so the next iteration finds the next occurrence.
        $sb.ReplaceFirst("data:image/png;base64","data:image-png;base64")
    }

    $index = $index + 1
}

# Restore our replacements..
$count = $sb.Replace("data:image-png;base64","data:image/png;base64")

$("All done.")