class GildiaComicsCrawler::SeriesCrawler

Constants

SERIES_BASE_URL

Public Instance Methods

all_series() { |single_series| ... } click to toggle source
# File lib/gildia_comics_crawler/series_crawler.rb, line 6
def all_series
  find_pages.flat_map do |page|
    series = series_from_page(page)
    if block_given?
      series.each do |single_series|
        yield single_series
      end
    end
    series
  end
end
find_pages() click to toggle source
# File lib/gildia_comics_crawler/series_crawler.rb, line 27
def find_pages
  @pages ||= begin
    download(SERIES_BASE_URL).css('.header-letters a').map do |letter|
      letter[:href]
    end
  end
end
series_from_page(page) click to toggle source
# File lib/gildia_comics_crawler/series_crawler.rb, line 18
def series_from_page page
  download(page).css('.long-list a').map do |serie_link|
    {
        name: serie_link.text,
        link: serie_link[:href]
    }
  end
end