24 lines
556 B
Elixir
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
|