image-dumper 0.5.5 → 0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/bin/dumper +47 -40
 - data/lib/dumper.rb +38 -36
 - data/lib/dumper/dumper.rb +114 -52
 - data/lib/dumper/profiles/4chan.rb +49 -33
 - data/lib/dumper/profiles/behoimi.rb +48 -38
 - data/lib/dumper/profiles/booru.rb +54 -40
 - data/lib/dumper/profiles/deviantart.rb +49 -33
 - data/lib/dumper/profiles/fakku.rb +61 -51
 - data/lib/dumper/profiles/fc2.rb +49 -33
 - data/lib/dumper/profiles/gelbooru.rb +54 -40
 - data/lib/dumper/profiles/imagebam.rb +55 -37
 - data/lib/dumper/profiles/mangaeden.rb +69 -53
 - data/lib/dumper/profiles/mangago.rb +53 -40
 - data/lib/dumper/profiles/mangahere.rb +68 -49
 - data/lib/dumper/profiles/multiplayer.rb +55 -41
 - data/lib/dumper/profiles/redblow.rb +49 -36
 - data/lib/dumper/profiles/sankakucomplex.rb +81 -58
 - data/lib/dumper/profiles/teca.rb +54 -34
 - data/lib/dumper/profiles/yande.rb +51 -42
 - data/lib/dumper/utils.rb +40 -42
 - data/lib/dumper/version.rb +23 -23
 - data/spec/4chan_spec.rb +28 -0
 - data/spec/behoimi_spec.rb +28 -0
 - data/spec/booru_spec.rb +28 -0
 - data/spec/deviantart_spec.rb +28 -0
 - data/spec/fakku_spec.rb +28 -0
 - data/spec/fc2_spec.rb +28 -0
 - data/spec/gelbooru_spec.rb +28 -0
 - data/spec/imagebam_spec.rb +28 -0
 - data/spec/mangaeden_spec.rb +28 -0
 - data/spec/mangago_spec.rb +28 -0
 - data/spec/mangahere_spec.rb +28 -0
 - data/spec/multiplayer_spec.rb +28 -0
 - data/spec/redblow_spec.rb +28 -0
 - data/spec/sankakucomplex_spec.rb +41 -0
 - data/spec/teca_spec.rb +28 -0
 - data/spec/yande_spec.rb +28 -0
 - metadata +119 -6
 - data/lib/dumper/profiles/i_doujin.rb +0 -38
 - data/lib/dumper/profiles/mi9.rb +0 -44
 - data/lib/dumper/profiles/wallpaperhere.rb +0 -43
 
    
        data/lib/dumper/utils.rb
    CHANGED
    
    | 
         @@ -1,43 +1,41 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            #--
         
     | 
| 
       2 
     | 
    
         
            -
            # Copyright(C) 2013 Giovanni Capuano <webmaster@giovannicapuano.net>
         
     | 
| 
       3 
     | 
    
         
            -
            #
         
     | 
| 
       4 
     | 
    
         
            -
            # This file is part of Dumper.
         
     | 
| 
       5 
     | 
    
         
            -
            #
         
     | 
| 
       6 
     | 
    
         
            -
            # Dumper is free software: you can redistribute it and/or modify
         
     | 
| 
       7 
     | 
    
         
            -
            # it under the terms of the GNU General Public License as published by
         
     | 
| 
       8 
     | 
    
         
            -
            # the Free Software Foundation, either version 3 of the License, or
         
     | 
| 
       9 
     | 
    
         
            -
            # (at your option) any later version.
         
     | 
| 
       10 
     | 
    
         
            -
            #
         
     | 
| 
       11 
     | 
    
         
            -
            # Dumper is distributed in the hope that it will be useful,
         
     | 
| 
       12 
     | 
    
         
            -
            # but WITHOUT ANY WARRANTY; without even the implied warranty of
         
     | 
| 
       13 
     | 
    
         
            -
            # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
         
     | 
| 
       14 
     | 
    
         
            -
            # GNU General Public License for more details.
         
     | 
| 
       15 
     | 
    
         
            -
            #
         
     | 
| 
       16 
     | 
    
         
            -
            # You should have received a copy of the GNU General Public License
         
     | 
| 
       17 
     | 
    
         
            -
            # along with Dumper.  If not, see <http://www.gnu.org/licenses/>.
         
     | 
| 
       18 
     | 
    
         
            -
            #++
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
            class String
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
               
     | 
| 
       25 
     | 
    
         
            -
              
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
             
     | 
| 
       30 
     | 
    
         
            -
             
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
       33 
     | 
    
         
            -
               
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
             
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
                [a.scheme, a.userinfo, a.host, a.port, nil, a.path, nil, a.query, a.fragment]
         
     | 
| 
       42 
     | 
    
         
            -
              end
         
     | 
| 
      
 1 
     | 
    
         
            +
            #--
         
     | 
| 
      
 2 
     | 
    
         
            +
            # Copyright(C) 2013 Giovanni Capuano <webmaster@giovannicapuano.net>
         
     | 
| 
      
 3 
     | 
    
         
            +
            #
         
     | 
| 
      
 4 
     | 
    
         
            +
            # This file is part of Dumper.
         
     | 
| 
      
 5 
     | 
    
         
            +
            #
         
     | 
| 
      
 6 
     | 
    
         
            +
            # Dumper is free software: you can redistribute it and/or modify
         
     | 
| 
      
 7 
     | 
    
         
            +
            # it under the terms of the GNU General Public License as published by
         
     | 
| 
      
 8 
     | 
    
         
            +
            # the Free Software Foundation, either version 3 of the License, or
         
     | 
| 
      
 9 
     | 
    
         
            +
            # (at your option) any later version.
         
     | 
| 
      
 10 
     | 
    
         
            +
            #
         
     | 
| 
      
 11 
     | 
    
         
            +
            # Dumper is distributed in the hope that it will be useful,
         
     | 
| 
      
 12 
     | 
    
         
            +
            # but WITHOUT ANY WARRANTY; without even the implied warranty of
         
     | 
| 
      
 13 
     | 
    
         
            +
            # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
         
     | 
| 
      
 14 
     | 
    
         
            +
            # GNU General Public License for more details.
         
     | 
| 
      
 15 
     | 
    
         
            +
            #
         
     | 
| 
      
 16 
     | 
    
         
            +
            # You should have received a copy of the GNU General Public License
         
     | 
| 
      
 17 
     | 
    
         
            +
            # along with Dumper.  If not, see <http://www.gnu.org/licenses/>.
         
     | 
| 
      
 18 
     | 
    
         
            +
            #++
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            class String
         
     | 
| 
      
 21 
     | 
    
         
            +
              def numeric?
         
     | 
| 
      
 22 
     | 
    
         
            +
                self.to_i.to_s == self || self.to_f.to_s == self
         
     | 
| 
      
 23 
     | 
    
         
            +
              end
         
     | 
| 
      
 24 
     | 
    
         
            +
              
         
     | 
| 
      
 25 
     | 
    
         
            +
              def sanitize_filename
         
     | 
| 
      
 26 
     | 
    
         
            +
                self.split(/(?<=.)\.(?=[^.])(?!.*\.[^.])/m).map { |s| s.gsub /[^a-z0-9\-]+/i, ?_ }.join(?.)
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
            class NilClass
         
     | 
| 
      
 31 
     | 
    
         
            +
              def numeric?
         
     | 
| 
      
 32 
     | 
    
         
            +
                false
         
     | 
| 
      
 33 
     | 
    
         
            +
              end  
         
     | 
| 
      
 34 
     | 
    
         
            +
            end
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
            class URI::Parser
         
     | 
| 
      
 37 
     | 
    
         
            +
              def split url
         
     | 
| 
      
 38 
     | 
    
         
            +
                a = Addressable::URI::parse url
         
     | 
| 
      
 39 
     | 
    
         
            +
                [a.scheme, a.userinfo, a.host, a.port, nil, a.path, nil, a.query, a.fragment]
         
     | 
| 
      
 40 
     | 
    
         
            +
              end
         
     | 
| 
       43 
41 
     | 
    
         
             
            end
         
     | 
    
        data/lib/dumper/version.rb
    CHANGED
    
    | 
         @@ -1,24 +1,24 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            #--
         
     | 
| 
       2 
     | 
    
         
            -
            # Copyright(C) 2013 Giovanni Capuano <webmaster@giovannicapuano.net>
         
     | 
| 
       3 
     | 
    
         
            -
            #
         
     | 
| 
       4 
     | 
    
         
            -
            # This file is part of Dumper.
         
     | 
| 
       5 
     | 
    
         
            -
            #
         
     | 
| 
       6 
     | 
    
         
            -
            # Dumper is free software: you can redistribute it and/or modify
         
     | 
| 
       7 
     | 
    
         
            -
            # it under the terms of the GNU General Public License as published by
         
     | 
| 
       8 
     | 
    
         
            -
            # the Free Software Foundation, either version 3 of the License, or
         
     | 
| 
       9 
     | 
    
         
            -
            # (at your option) any later version.
         
     | 
| 
       10 
     | 
    
         
            -
            #
         
     | 
| 
       11 
     | 
    
         
            -
            # Dumper is distributed in the hope that it will be useful,
         
     | 
| 
       12 
     | 
    
         
            -
            # but WITHOUT ANY WARRANTY; without even the implied warranty of
         
     | 
| 
       13 
     | 
    
         
            -
            # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
         
     | 
| 
       14 
     | 
    
         
            -
            # GNU General Public License for more details.
         
     | 
| 
       15 
     | 
    
         
            -
            #
         
     | 
| 
       16 
     | 
    
         
            -
            # You should have received a copy of the GNU General Public License
         
     | 
| 
       17 
     | 
    
         
            -
            # along with Dumper.  If not, see <http://www.gnu.org/licenses/>.
         
     | 
| 
       18 
     | 
    
         
            -
            #++
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
            module Dumper
         
     | 
| 
       21 
     | 
    
         
            -
              def self.version
         
     | 
| 
       22 
     | 
    
         
            -
                '0. 
     | 
| 
       23 
     | 
    
         
            -
              end
         
     | 
| 
      
 1 
     | 
    
         
            +
            #--
         
     | 
| 
      
 2 
     | 
    
         
            +
            # Copyright(C) 2013 Giovanni Capuano <webmaster@giovannicapuano.net>
         
     | 
| 
      
 3 
     | 
    
         
            +
            #
         
     | 
| 
      
 4 
     | 
    
         
            +
            # This file is part of Dumper.
         
     | 
| 
      
 5 
     | 
    
         
            +
            #
         
     | 
| 
      
 6 
     | 
    
         
            +
            # Dumper is free software: you can redistribute it and/or modify
         
     | 
| 
      
 7 
     | 
    
         
            +
            # it under the terms of the GNU General Public License as published by
         
     | 
| 
      
 8 
     | 
    
         
            +
            # the Free Software Foundation, either version 3 of the License, or
         
     | 
| 
      
 9 
     | 
    
         
            +
            # (at your option) any later version.
         
     | 
| 
      
 10 
     | 
    
         
            +
            #
         
     | 
| 
      
 11 
     | 
    
         
            +
            # Dumper is distributed in the hope that it will be useful,
         
     | 
| 
      
 12 
     | 
    
         
            +
            # but WITHOUT ANY WARRANTY; without even the implied warranty of
         
     | 
| 
      
 13 
     | 
    
         
            +
            # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
         
     | 
| 
      
 14 
     | 
    
         
            +
            # GNU General Public License for more details.
         
     | 
| 
      
 15 
     | 
    
         
            +
            #
         
     | 
| 
      
 16 
     | 
    
         
            +
            # You should have received a copy of the GNU General Public License
         
     | 
| 
      
 17 
     | 
    
         
            +
            # along with Dumper.  If not, see <http://www.gnu.org/licenses/>.
         
     | 
| 
      
 18 
     | 
    
         
            +
            #++
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            module Dumper
         
     | 
| 
      
 21 
     | 
    
         
            +
              def self.version
         
     | 
| 
      
 22 
     | 
    
         
            +
                '0.6'
         
     | 
| 
      
 23 
     | 
    
         
            +
              end
         
     | 
| 
       24 
24 
     | 
    
         
             
            end
         
     | 
    
        data/spec/4chan_spec.rb
    ADDED
    
    | 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_4chan'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a thread from 4chan' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'https://boards.4chan.org/e/res/1436774'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_4chan url, @dir
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be 1
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be >= 1
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_behoimi'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a thread from behoimi' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://behoimi.org/post/index?tags=kaeru'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_behoimi url, @dir
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be 16
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be 800
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
    
        data/spec/booru_spec.rb
    ADDED
    
    | 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_booru'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a page from *booru' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://safebooru.org/index.php?page=post&s=list&tags=crying'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_booru url, @dir
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be >= 27
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be >= 300
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_deviantart'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a gallery from deviantart' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://targete.deviantart.com/gallery/?offset=72'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_deviantart url, @dir
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be >= 20
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be > 300
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
    
        data/spec/fakku_spec.rb
    ADDED
    
    | 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_fakku'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a manga from fakku' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://www.fakku.net/doujinshi/connected-feelings-english'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_fakku url, @dir, 1, 5
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be 5
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be > 300
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
    
        data/spec/fc2_spec.rb
    ADDED
    
    | 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_fc2'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a gallery from *fc2' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://moeimg.blog133.fc2.com/blog-entry-5004.html'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_fc2 url, @dir
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be 53
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be > 300
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_gelbooru'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a gallery from gelbooru' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://gelbooru.com/index.php?page=post&s=list&tags=bath'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_gelbooru url, @dir
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be >= 56
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be > 300
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_imagebam'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a gallery from imagebam' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://www.imagebam.com/gallery/ab4f428e9eec0c70bc53b27cfb91d902/'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_imagebam url, @dir
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be >= 94
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be 511
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_mangaeden'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a manga from mangaeden' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://www.mangaeden.com/en-manga/nisekoi'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_mangaeden url, @dir, 1, 2
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*_Question/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be 24
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.first
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be 899
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_mangago'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a manga from mangago' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://www.mangago.com/read-manga/ore_no_imouto_ga_konna_ni_kawaii_wake_ga_nai_my_angel_ayase_is_so_cute_doujinshi/bt/71284/Ch1/'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_mangago url, @dir
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be 21
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.last).to    be 1300
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #! /usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'dumper'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'fastimage'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'fileutils'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe 'Dumper' do
         
     | 
| 
      
 7 
     | 
    
         
            +
              before do
         
     | 
| 
      
 8 
     | 
    
         
            +
                @dir = 'tmp_mangahere'
         
     | 
| 
      
 9 
     | 
    
         
            +
                Dir.mkdir @dir
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              after do
         
     | 
| 
      
 13 
     | 
    
         
            +
                FileUtils.rm_r @dir
         
     | 
| 
      
 14 
     | 
    
         
            +
              end
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              it 'dumps a manga from mangahere' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                url = 'http://www.mangahere.com/manga/love_all/'
         
     | 
| 
      
 18 
     | 
    
         
            +
                Dumper::Profiles.get_mangahere url, @dir, 1, 2
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
                images = Dir["#{@dir}/*_2/*"]
         
     | 
| 
      
 21 
     | 
    
         
            +
                expect(images.length).to be 41
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                image = FastImage.size images.last
         
     | 
| 
      
 24 
     | 
    
         
            +
                expect(image).to         be_kind_of(Array)
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                expect(image.first).to   be 730
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     |