Class: Nous::Extractor::Default

Inherits:
Command
  • Object
show all
Defined in:
lib/nous/extractor/default.rb,
lib/nous/extractor/default/client.rb

Defined Under Namespace

Classes: Client

Instance Method Summary collapse

Methods inherited from Command

call, #failure, #success

Constructor Details

#initialize(selector: nil) ⇒ Default

Returns a new instance of Default.



8
9
10
# File 'lib/nous/extractor/default.rb', line 8

def initialize(selector: nil)
  @selector = selector
end

Instance Method Details

#extract(record) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/nous/extractor/default.rb', line 12

def extract(record)
  extracted = extract_content(record.html)
  markdown = convert_to_markdown(extracted[:content])

  success(payload: ExtractedContent.new(title: extracted[:title], content: markdown))
rescue Client::ExtractionError, Converter::ConversionError => e
  failure(ExtractionError.new(e.message))
end