Sha256: 1837ac3c9aeca8ee3af826e5a40bd1a7b8e6a250db00ced837229336ee084dd0

Contents?: true

Size: 1018 Bytes

Versions: 7

Compression:

Stored size: 1018 Bytes

Contents

# -*- coding: utf-8 -*-
module Kindai::Interface
  def self.download_url(url, config = { })
    book = Kindai::Book.new_from_permalink(url)
    download_book(book, config)
  end

  def self.download_book(book, config = { })
    downloader = Kindai::BookDownloader.new_from_book(book)
    downloader.base_path = config[:base_path] if config[:base_path]
    downloader.retry_count = config[:retry_count] if config[:retry_count]
    Kindai::Util.logger.info "download #{book.title}(#{book.total_spread} spreads) to #{downloader.book_path}"
    downloader.download

    publisher = Kindai::Publisher.new_from_path downloader.book_path
    publisher.book = book
    publisher.publish_auto
  end

  def self.download_keyword(keyword, config = { })
    searcher = Kindai::Searcher.search(keyword)
    searcher.each_with_index { |book, index|
      begin
        Kindai::Util.logger.info "book #{index+1} / #{searcher.length}"
        download_book book, config
      rescue => error
        p error
      end
    }
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
kindai-1.7.4 lib/kindai/interface.rb
kindai-1.7.2 lib/kindai/interface.rb
kindai-1.7.1 lib/kindai/interface.rb
kindai-1.7.0 lib/kindai/interface.rb
kindai-1.6.2 lib/kindai/interface.rb
kindai-1.6.1 lib/kindai/interface.rb
kindai-1.6.0 lib/kindai/interface.rb