Class: Html2rss::AutoSource::Scraper::Schema::ListItem

Inherits:
Thing
  • Object
show all
Defined in:
lib/html2rss/auto_source/scraper/schema/list_item.rb

Overview

Constant Summary

Constants inherited from Thing

Thing::DEFAULT_ATTRIBUTES, Thing::SUPPORTED_TYPES

Instance Attribute Summary

Attributes inherited from Thing

#base_url, #schema_object

Instance Method Summary collapse

Methods inherited from Thing

#call, #categories, #image, #image_urls, #initialize, #normalized_base_url, #normalized_id, #normalized_id_url, #normalized_id_value, #published_at

Constructor Details

This class inherits a constructor from Html2rss::AutoSource::Scraper::Schema::Thing

Instance Method Details

#descriptionString?

Returns list-item description.

Returns:

  • (String, nil)

    list-item description



15
# File 'lib/html2rss/auto_source/scraper/schema/list_item.rb', line 15

def description = schema_object.dig(:item, :description) || super

#idString?

Returns stable list-item identifier.

Returns:

  • (String, nil)

    stable list-item identifier



11
12
# File 'lib/html2rss/auto_source/scraper/schema/list_item.rb', line 11

def id =          (id = (schema_object.dig(:item, :@id) || super).to_s).empty? ? nil : id
# @return [String, nil] list-item title

#titleString?

Returns list-item title.

Returns:

  • (String, nil)

    list-item title



13
14
# File 'lib/html2rss/auto_source/scraper/schema/list_item.rb', line 13

def title =       schema_object.dig(:item, :name) || super || url&.titleized
# @return [String, nil] list-item description

#urlHtml2rss::Url?

Returns:



18
19
20
21
22
# File 'lib/html2rss/auto_source/scraper/schema/list_item.rb', line 18

def url
  url = schema_object.dig(:item, :url) || super

  Url.from_relative(url, base_url || url) if url
end