frenzy/lib/frenzy/pipeline/extractor/erica_sadun.ex

24 lines
556 B
Elixir

defmodule Frenzy.Pipeline.Extractor.EricaSadun do
@moduledoc """
Extractor for https://ericasadun.com
"""
alias Frenzy.Pipeline.Extractor
@behaviour Extractor
@impl Extractor
def extract(html_tree) do
case Floki.find(html_tree, ".post-content") do
[content_elem | _] ->
# content element includes social media buttons and related posts
{
:ok,
Floki.filter_out(content_elem, "div.sharedaddy, div#jp-relatedposts")
}
_ ->
{:error, "no matching elements"}
end
end
end