class Rack::RackSeo::Summarizer
Public Class Methods
extract_description(document, selector)
click to toggle source
# File lib/rack-seo/summarizer.rb, line 5 def extract_description(document, selector) sanitize_meta_description get_description(document, selector) end
extract_keywords(document, selector)
click to toggle source
# File lib/rack-seo/summarizer.rb, line 9 def extract_keywords(document, selector) sanitize_meta_keywords get_keywords(document, selector) end
Private Class Methods
get_description(document, selector)
click to toggle source
# File lib/rack-seo/summarizer.rb, line 15 def self.get_description(document, selector) get_selected_elements(document, selector).map {|element| element.inner_text }.join(' ').summarize(:ratio => 1).strip end
get_keywords(document, selector)
click to toggle source
# File lib/rack-seo/summarizer.rb, line 21 def self.get_keywords(document, selector) get_selected_elements(document, selector).map {|element| element.inner_text }.join(' ').summarize(:topics => true).last end
get_selected_elements(document, selector)
click to toggle source
# File lib/rack-seo/summarizer.rb, line 27 def self.get_selected_elements(document, selector) begin elements = document.css(selector) rescue Nokogiri::CSS::SyntaxError => e document.css('body') end if elements.nil? || elements.empty? document.css('body') else elements end end