HTMLParser

Mit dem HTMLParseropen in new window Step kann man einzelne Elemente aus HTML-Code extrahieren.

Beispiel

Sie wollen aus diesem HTML-Fragment alle URLs aller Links auszulesen (in diesem Fall nur ein einzelner Link).

<div id="somediv"><a id="link" href="http://example.com">My Link</a></div>

Dazu ist folgender parsingCode notwendig:

<#list selectHTML("a") as e>
    ${e.attr("href")!}
</#list>
  • selectHTML() ist eine Synesty-eigene Funktion, die als Parameter einen CSS-Ausdruck erhält, und alle passenden Elemente als sog. Elements-Objekt (quasi eine Liste aller gefundenen HTML-Elemente) zurückgibt. In diesem Fall werden alle Links (<a> Tags) selektiert.
  • Das Ergebnis ist ein sog. Elements-Objekt des verwendeten JSOUP-Frameworks, womit auf die Element zugegriffen werden kann.
  • Über diese Liste wird mit <#list> iteriert und aus jedem a-Tag wird das href Attribut ausgelesen.
  • Weitere Informationen zum Selektieren der Elemente unter http://jsoup.org/cookbook/extracting-data/selector-syntax

Ergebnis