class Paginator
Attributes
pagination[R]
record_limit[R]
site[R]
Public Class Methods
new(site, record_limit)
click to toggle source
# File lib/rubyscraper/paginator.rb, line 4 def initialize(site, record_limit) @site = site @pagination = site["summary"]["pagination"] @record_limit = record_limit end
Public Instance Methods
add_on()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 20 def add_on @add_on end
define_pagination_params()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 10 def define_pagination_params if paginated_site? @steps = url_page_addons @add_on = pagination["format"] else @steps = [""] @add_on = "" end end
steps()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 24 def steps @steps end
Private Instance Methods
num_pages()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 38 def num_pages output = record_limit / records_per_page output += 1 if record_limit % records_per_page != 0 output end
paginated_site?()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 56 def paginated_site? site["summary"]["paginated"] == "true" end
pagination_scale()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 52 def pagination_scale pagination["scale"].to_i end
pagination_start()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 48 def pagination_start pagination["start"].to_i end
records_per_page()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 44 def records_per_page pagination["records_per_page"].to_i end
url_page_addons()
click to toggle source
# File lib/rubyscraper/paginator.rb, line 30 def url_page_addons output = [] num_pages.times do |i| output << pagination_start + pagination_scale * i end output end