Premailex v0.3.7 Premailex.HTMLParser View Source

Module that provide HTML parsing API using an underlying HTML parser library.

Link to this section Summary

Functions

Searches an HTML tree for the selector.

Filters elements matching the selector from the HTML tree.

Parses a HTML string into an HTML tree.

Extracts text elements from the HTML tree.

Turns an HTML tree into a string.

Link to this section Types

Link to this type

html_tree() View Source
html_tree() :: tuple() | list()

Link to this section Functions

Searches an HTML tree for the selector.

Examples

iex> Premailex.HTMLParser.all({"html", [], [{"head", [], []}, {"body", [], [{"h1", [], ["Title"]}]}]}, "h1")
[{"h1", [], ["Title"]}]
Link to this function

filter(tree, selector) View Source
filter(html_tree(), String.t()) :: [html_tree()]

Filters elements matching the selector from the HTML tree.

Examples

iex> Premailex.HTMLParser.filter([{"html", [], [{"head", [], []}, {"body", [], [{"h1", [], ["Title"]}]}]}], "h1")
[{"html", [], [{"head", [], []}, {"body", [], []}]}]

Parses a HTML string into an HTML tree.

Examples

iex> Premailex.HTMLParser.parse("<html><head></head><body><h1>Title</h1></body></html>")
{"html", [], [{"head", [], []}, {"body", [], [{"h1", [], ["Title"]}]}]}

Extracts text elements from the HTML tree.

Examples

iex> Premailex.HTMLParser.text({"html", [], [{"head", [], []}, {"body", [], [{"h1", [], ["Title"]}]}]})
"Title"

Turns an HTML tree into a string.

Examples

iex> Premailex.HTMLParser.to_string({"html", [], [{"head", [], []}, {"body", [], [{"h1", [], ["Title"]}]}]})
"<html><head></head><body><h1>Title</h1></body></html>"