Archiv » Juli, 2016 «

11 | 07 | 2016

PowerShell Hack: Text aus HTML extrahieren

Geschrieben von um 18:07 Uhr

Neulich im TechNet-Forum wollte jemand wissen, wie man Text aus HTML extrahiert.

Ich musste das vor Kurzem auch für ein Projekt umsetzen, wobei es nicht darauf ankam, den tatsächlich sichtbaren Text in der tatsächlich angezeigten Reihenfolge darzustellen. Und das geht so:

Wenn die Seite von einem Webserver geladen wird,

 

$page = Invoke-WebRequest "http://my.webserv.er"
$doc = $page.parsedHTML

Wenn die Seite aus einer HTML-Datei geladen wird,

$doc = New-Object -com "HTMLFILE"
$page = Get-Content "my:\web\page\file.html"
$doc.IHTMLDocument2_write($page)

 

Danach ist die Vorgehensweise identisch:

foreach ($tag in $doc.all) {
    if (($tag.innerHTML -like $tag.InnerText) -and ($tag.InnerText)) {
        if ($tag.InnerText.Trim().Length -gt 0) {
            "$($tag.InnerText.Trim())" | Out-File "my:\text\file.txt" -Append
        }
    }
}

Tags » , , , , «

+