Current section
Files
Jump to
Current section
Files
doc/Readability.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="ExDoc v0.12.0">
<title>Readability – readability v0.6.0</title>
<link rel="stylesheet" href="dist/app-88251e7c81.css" />
<link rel="canonical" href="https://hexdocs.pm/readability/Readability.html" />
<script src="dist/sidebar_items.js"></script>
</head>
<body data-type="modules">
<div class="main">
<button class="sidebar-toggle">
<i class="icon-menu"></i>
</button>
<section class="sidebar">
<a href="api-reference.html" class="sidebar-projectLink">
<div class="sidebar-projectDetails">
<h1 class="sidebar-projectName">
readability
</h1>
<h2 class="sidebar-projectVersion">
v0.6.0
</h2>
</div>
</a>
<div class="sidebar-search">
<i class="icon-search"></i>
<input type="text" class="sidebar-searchInput" placeholder="search" autocomplete="off" />
</div>
<ul class="sidebar-listNav">
<li><a id="extras-list" href="#full-list">Pages</a></li>
<li><a id="modules-list" href="#full-list">Modules</a></li>
</ul>
<ul id="full-list" class="sidebar-fullList"></ul>
<div class="sidebar-noResults"></div>
</section>
<section class="content">
<div class="content-outer">
<div id="content" class="content-inner">
<h1>
<small class="visible-xs">readability v0.6.0</small>
Readability
</h1>
<section id="moduledoc" class="docstring">
<p>Readability library for extracting & curating articles.</p>
<h2>Example</h2>
<pre><code class="elixir">@type html :: binary
# Just pass url
%Readability.Summary{title: title, authors: authors, article_html: article} = Readability.summarize(url)
# Extract title
Readability.title(html)
# Extract authors.
Readability.authors(html)
# Extract only text from article
article = html
|> Readability.article
|> Readability.readable_text
# Extract article with transformed html
article = html
|> Readability.article
|> Readability.raw_html</code></pre>
</section>
<section id="summary" class="details-list">
<h1 class="section-heading">
<a class="hover-link" href="#summary">
<i class="icon-link"></i>
</a>
Summary
</h1>
<div class="summary-types summary">
<h2>
<a href="#types">Types</a>
</h2>
<div class="summary-row">
<div class="summary-signature">
<a href="#t:html_tree/0">html_tree()</a>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#t:options/0">options()</a>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#t:raw_html/0">raw_html()</a>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#t:url/0">url()</a>
</div>
</div>
</div>
<div class="summary-functions summary">
<h2>
<a href="#functions">Functions</a>
</h2>
<div class="summary-row">
<div class="summary-signature">
<a href="#article/2">article(raw_html, opts \\ [])</a>
</div>
<div class="summary-synopsis"><p>Using a variety of metrics (content score, classname, element types), find the content that is
most likely to be the stuff a user wants to read</p>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#authors/1">authors(html)</a>
</div>
<div class="summary-synopsis"><p>Extract authors</p>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#default_options/0">default_options()</a>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#parse/1">parse(raw_html)</a>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#raw_html/1">raw_html(html_tree)</a>
</div>
<div class="summary-synopsis"><p>return raw html binary from html_tree</p>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#readable_html/1">readable_html(html_tree)</a>
</div>
<div class="summary-synopsis"><p>return attributes, tags cleaned html</p>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#readable_text/1">readable_text(html_tree)</a>
</div>
<div class="summary-synopsis"><p>return only text binary from html_tree</p>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#regexes/0">regexes()</a>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#summarize/2">summarize(url, opts \\ [])</a>
</div>
<div class="summary-synopsis"><p>summarize the primary readable content of a webpage</p>
</div>
</div>
<div class="summary-row">
<div class="summary-signature">
<a href="#title/1">title(raw_html)</a>
</div>
<div class="summary-synopsis"><p>Extract title</p>
</div>
</div>
</div>
</section>
<section id="types" class="types details-list">
<h1 class="section-heading">
<a class="hover-link" href="#types">
<i class="icon-link"></i>
</a>
Types
</h1>
<div class="types-list">
<div id="t:html_tree/0" class="type-detail">
<pre><code class="elixir"><a href="#t:html_tree/0">html_tree</a> :: tuple | list</code></pre>
</div>
<div id="t:options/0" class="type-detail">
<pre><code class="elixir"><a href="#t:options/0">options</a> :: list</code></pre>
</div>
<div id="t:raw_html/0" class="type-detail">
<pre><code class="elixir"><a href="#t:raw_html/0">raw_html</a> :: binary</code></pre>
</div>
<div id="t:url/0" class="type-detail">
<pre><code class="elixir"><a href="#t:url/0">url</a> :: binary</code></pre>
</div>
</div>
</section>
<section id="functions" class="details-list">
<h1 class="section-heading">
<a class="hover-link" href="#functions">
<i class="icon-link"></i>
</a>
Functions
</h1>
<div class="detail" id="article/2">
<div class="detail-header">
<a href="#article/2" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">article(raw_html, opts \\ [])</span>
</div>
<div class="specs">
<h4 class="specs-title">Specs</h4>
<div class="specs-list">
<pre><code class="elixir">article(binary, <a href="#t:options/0">options</a>) :: <a href="#t:html_tree/0">html_tree</a></code></pre>
</div>
</div>
<section class="docstring">
<p>Using a variety of metrics (content score, classname, element types), find the content that is
most likely to be the stuff a user wants to read</p>
<h2>Example</h2>
<pre><code class="iex elixir">iex> article_tree = Redability(html_str)
# returns article that is tuple</code></pre>
</section>
</div>
<div class="detail" id="authors/1">
<div class="detail-header">
<a href="#authors/1" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">authors(html)</span>
</div>
<div class="specs">
<h4 class="specs-title">Specs</h4>
<div class="specs-list">
<pre><code class="elixir">authors(binary | <a href="#t:html_tree/0">html_tree</a>) :: <a href="http://elixir-lang.org/docs/stable/elixir/Access.html#t:get/2">list[binary]</a></code></pre>
</div>
</div>
<section class="docstring">
<p>Extract authors</p>
<h2>Example</h2>
<pre><code class="iex elixir">iex> authors = Readability.authors(html_str)
["José Valim", "chrismccord"]</code></pre>
</section>
</div>
<div class="detail" id="default_options/0">
<div class="detail-header">
<a href="#default_options/0" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">default_options()</span>
</div>
<section class="docstring">
</section>
</div>
<div class="detail" id="parse/1">
<div class="detail-header">
<a href="#parse/1" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">parse(raw_html)</span>
</div>
<section class="docstring">
</section>
</div>
<div class="detail" id="raw_html/1">
<div class="detail-header">
<a href="#raw_html/1" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">raw_html(html_tree)</span>
</div>
<div class="specs">
<h4 class="specs-title">Specs</h4>
<div class="specs-list">
<pre><code class="elixir">raw_html(<a href="#t:html_tree/0">html_tree</a>) :: binary</code></pre>
</div>
</div>
<section class="docstring">
<p>return raw html binary from html_tree</p>
</section>
</div>
<div class="detail" id="readable_html/1">
<div class="detail-header">
<a href="#readable_html/1" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">readable_html(html_tree)</span>
</div>
<div class="specs">
<h4 class="specs-title">Specs</h4>
<div class="specs-list">
<pre><code class="elixir">readable_html(<a href="#t:html_tree/0">html_tree</a>) :: binary</code></pre>
</div>
</div>
<section class="docstring">
<p>return attributes, tags cleaned html</p>
</section>
</div>
<div class="detail" id="readable_text/1">
<div class="detail-header">
<a href="#readable_text/1" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">readable_text(html_tree)</span>
</div>
<div class="specs">
<h4 class="specs-title">Specs</h4>
<div class="specs-list">
<pre><code class="elixir">readable_text(<a href="#t:html_tree/0">html_tree</a>) :: binary</code></pre>
</div>
</div>
<section class="docstring">
<p>return only text binary from html_tree</p>
</section>
</div>
<div class="detail" id="regexes/0">
<div class="detail-header">
<a href="#regexes/0" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">regexes()</span>
</div>
<section class="docstring">
</section>
</div>
<div class="detail" id="summarize/2">
<div class="detail-header">
<a href="#summarize/2" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">summarize(url, opts \\ [])</span>
</div>
<div class="specs">
<h4 class="specs-title">Specs</h4>
<div class="specs-list">
<pre><code class="elixir">summarize(<a href="#t:url/0">url</a>, <a href="#t:options/0">options</a>) :: <a href="Readability.Summary.html#t:t/0">Readability.Summary.t</a></code></pre>
</div>
</div>
<section class="docstring">
<p>summarize the primary readable content of a webpage.</p>
</section>
</div>
<div class="detail" id="title/1">
<div class="detail-header">
<a href="#title/1" class="detail-link" title="Link to this function">
<i class="icon-link"></i>
</a>
<span class="signature">title(raw_html)</span>
</div>
<div class="specs">
<h4 class="specs-title">Specs</h4>
<div class="specs-list">
<pre><code class="elixir">title(binary | <a href="#t:html_tree/0">html_tree</a>) :: binary</code></pre>
</div>
</div>
<section class="docstring">
<p>Extract title</p>
<h2>Example</h2>
<pre><code class="iex elixir">iex> title = Readability.title(html_str)
"Some title in html"</code></pre>
</section>
</div>
</section>
<footer class="footer">
<p>
<span class="line">
Built using
<a href="https://github.com/elixir-lang/ex_doc" title="ExDoc" rel="help" target="_blank">ExDoc</a> (v0.12.0),
</span>
<span class="line">
designed by
<a href="https://twitter.com/dignifiedquire" target="_blank" title="@dignifiedquire">Friedel Ziegelmayer</a>.
</span>
</p>
<button class="night-mode-toggle" />
</footer>
</div>
</div>
</section>
</div>
<script src="dist/app-21f1a20b9e.js"></script>
</body>
</html>