Class: BrandLogo::Strategies::Scraping::FormatExtractor

Inherits:
Object
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/brand_logo/strategies/scraping/format_extractor.rb

Overview

Extracts format information from favicon link elements

Constant Summary collapse

MIME_TO_FORMAT =
T.let({
  'image/x-icon' => 'ico',
  'image/vnd.microsoft.icon' => 'ico',
  'image/png' => 'png',
  'image/svg+xml' => 'svg',
  'image/jpeg' => 'jpg',
  'image/webp' => 'webp'
}.freeze, T::Hash[String, String])

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(link) ⇒ FormatExtractor

Returns a new instance of FormatExtractor.



28
29
30
# File 'lib/brand_logo/strategies/scraping/format_extractor.rb', line 28

def initialize(link)
  @link = link
end

Class Method Details

.extract(link) ⇒ Object



23
24
25
# File 'lib/brand_logo/strategies/scraping/format_extractor.rb', line 23

def self.extract(link)
  new(link).extract
end

Instance Method Details

#extractObject



33
34
35
# File 'lib/brand_logo/strategies/scraping/format_extractor.rb', line 33

def extract
  extract_from_mime_type || extract_from_extension
end