Class: Nous::Extractor::Default::Client
- Defined in:
- lib/nous/extractor/default/client.rb
Defined Under Namespace
Classes: ExtractionError
Constant Summary collapse
- NOISY_TAGS =
%w[script style nav footer].freeze
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(html:, selector: nil) ⇒ Client
constructor
A new instance of Client.
Methods inherited from Command
Constructor Details
#initialize(html:, selector: nil) ⇒ Client
Returns a new instance of Client.
13 14 15 16 |
# File 'lib/nous/extractor/default/client.rb', line 13 def initialize(html:, selector: nil) @html = html @selector = selector end |
Instance Method Details
#call ⇒ Object
18 19 20 21 22 23 24 25 26 |
# File 'lib/nous/extractor/default/client.rb', line 18 def call readable = ::Readability::Document.new(prepared_html) text = Nokogiri::HTML(readable.content).text.strip return failure(ExtractionError.new("readability returned no content")) if text.empty? title = resolve_title(readable) success(payload: {title: title, content: readable.content}) end |