ruboty-dmm 0.0.2 → 0.0.3
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/CHANGELOG.md +17 -0
 - data/Gemfile.lock +7 -7
 - data/README.md +3 -3
 - data/doc/ja/README.md +3 -3
 - data/lib/ruboty/dmm/actions/messenger.rb +18 -2
 - data/lib/ruboty/dmm/agent.rb +0 -2
 - data/lib/ruboty/dmm/ranking.rb +3 -3
 - data/lib/ruboty/dmm/version.rb +1 -1
 - data/spec/ruboty/dmm/ranking_spec.rb +6 -3
 - metadata +3 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: a8eb0d93dcba3e0825cf3ce4392da8190b24b9d6
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 8c7ee10f8d1a0ce550f3a985492dd988c9315598
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: c9fcc39e3f8296f07d9f3c46b01a732d6a2b810ade055a43238536fa767e6d5c5c842711855545cab2fbcb51b2a0b9f4c3aec9619c2255160ba31815a53043c9
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: d767603ed172abe30be1bed464dd922027122f80437022463e8c698350dd4e735139c1f89d65d1b82de03b4a27452622286e15d60c7e37db8b4a445d41420efb
         
     | 
    
        data/CHANGELOG.md
    ADDED
    
    | 
         @@ -0,0 +1,17 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # v0.0.3 (Unreleased)
         
     | 
| 
      
 2 
     | 
    
         
            +
            - Correct READMEs
         
     | 
| 
      
 3 
     | 
    
         
            +
            - Add an example needed for each rank.
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            ## Breaking changes
         
     | 
| 
      
 6 
     | 
    
         
            +
            - Show thumbnail for each ranks.
         
     | 
| 
      
 7 
     | 
    
         
            +
              - From this changes, dropped support except for Slack.
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            # v0.0.2
         
     | 
| 
      
 10 
     | 
    
         
            +
            - Remove an unused method.
         
     | 
| 
      
 11 
     | 
    
         
            +
            - Support all rankings (all, weekly, cg, game, voice).
         
     | 
| 
      
 12 
     | 
    
         
            +
            - Update document according to now specification.
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            # v0.0.1
         
     | 
| 
      
 15 
     | 
    
         
            +
            - Implement fetch the ranking for the DMM.R18's doujin cg.
         
     | 
| 
      
 16 
     | 
    
         
            +
            - Modify the task for managing the gem.
         
     | 
| 
      
 17 
     | 
    
         
            +
            - Create an environment for test.
         
     | 
    
        data/Gemfile.lock
    CHANGED
    
    | 
         @@ -1,28 +1,28 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            PATH
         
     | 
| 
       2 
2 
     | 
    
         
             
              remote: .
         
     | 
| 
       3 
3 
     | 
    
         
             
              specs:
         
     | 
| 
       4 
     | 
    
         
            -
                ruboty-dmm (0.0. 
     | 
| 
      
 4 
     | 
    
         
            +
                ruboty-dmm (0.0.3)
         
     | 
| 
       5 
5 
     | 
    
         
             
                  mechanize
         
     | 
| 
       6 
6 
     | 
    
         
             
                  ruboty
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            GEM
         
     | 
| 
       9 
9 
     | 
    
         
             
              remote: https://rubygems.org/
         
     | 
| 
       10 
10 
     | 
    
         
             
              specs:
         
     | 
| 
       11 
     | 
    
         
            -
                activesupport (5.0. 
     | 
| 
      
 11 
     | 
    
         
            +
                activesupport (5.0.2)
         
     | 
| 
       12 
12 
     | 
    
         
             
                  concurrent-ruby (~> 1.0, >= 1.0.2)
         
     | 
| 
       13 
13 
     | 
    
         
             
                  i18n (~> 0.7)
         
     | 
| 
       14 
14 
     | 
    
         
             
                  minitest (~> 5.1)
         
     | 
| 
       15 
15 
     | 
    
         
             
                  tzinfo (~> 1.1)
         
     | 
| 
       16 
16 
     | 
    
         
             
                ast (2.3.0)
         
     | 
| 
       17 
17 
     | 
    
         
             
                coderay (1.1.1)
         
     | 
| 
       18 
     | 
    
         
            -
                concurrent-ruby (1.0. 
     | 
| 
      
 18 
     | 
    
         
            +
                concurrent-ruby (1.0.5)
         
     | 
| 
       19 
19 
     | 
    
         
             
                diff-lcs (1.3)
         
     | 
| 
       20 
     | 
    
         
            -
                domain_name (0.5. 
     | 
| 
      
 20 
     | 
    
         
            +
                domain_name (0.5.20170223)
         
     | 
| 
       21 
21 
     | 
    
         
             
                  unf (>= 0.0.5, < 1.0.0)
         
     | 
| 
       22 
22 
     | 
    
         
             
                dotenv (2.2.0)
         
     | 
| 
       23 
23 
     | 
    
         
             
                http-cookie (1.0.3)
         
     | 
| 
       24 
24 
     | 
    
         
             
                  domain_name (~> 0.5)
         
     | 
| 
       25 
     | 
    
         
            -
                i18n (0.8. 
     | 
| 
      
 25 
     | 
    
         
            +
                i18n (0.8.1)
         
     | 
| 
       26 
26 
     | 
    
         
             
                mechanize (2.7.5)
         
     | 
| 
       27 
27 
     | 
    
         
             
                  domain_name (~> 0.5, >= 0.5.1)
         
     | 
| 
       28 
28 
     | 
    
         
             
                  http-cookie (~> 1.0)
         
     | 
| 
         @@ -80,7 +80,7 @@ GEM 
     | 
|
| 
       80 
80 
     | 
    
         
             
                  slop
         
     | 
| 
       81 
81 
     | 
    
         
             
                ruby-progressbar (1.8.1)
         
     | 
| 
       82 
82 
     | 
    
         
             
                slop (3.6.0)
         
     | 
| 
       83 
     | 
    
         
            -
                thread_safe (0.3. 
     | 
| 
      
 83 
     | 
    
         
            +
                thread_safe (0.3.6)
         
     | 
| 
       84 
84 
     | 
    
         
             
                tzinfo (1.2.2)
         
     | 
| 
       85 
85 
     | 
    
         
             
                  thread_safe (~> 0.1)
         
     | 
| 
       86 
86 
     | 
    
         
             
                unf (0.1.4)
         
     | 
| 
         @@ -101,4 +101,4 @@ DEPENDENCIES 
     | 
|
| 
       101 
101 
     | 
    
         
             
              ruboty-dmm!
         
     | 
| 
       102 
102 
     | 
    
         | 
| 
       103 
103 
     | 
    
         
             
            BUNDLED WITH
         
     | 
| 
       104 
     | 
    
         
            -
               1.14. 
     | 
| 
      
 104 
     | 
    
         
            +
               1.14.6
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -3,7 +3,7 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            # Ruboty DMM
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            ## What is Ruboty DMM
         
     | 
| 
       6 
     | 
    
         
            -
            Ruboty DMM is a notifying rankings for DMM.R18's Japanese doujin CG.
         
     | 
| 
      
 6 
     | 
    
         
            +
            Ruboty DMM is a notifying rankings for DMM.R18's Japanese doujin CG on Slack.
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            ## Installation
         
     | 
| 
       9 
9 
     | 
    
         
             
            On your gemfile:
         
     | 
| 
         @@ -39,10 +39,10 @@ gem 'ruboty-cron' 
     | 
|
| 
       39 
39 
     | 
    
         
             
            Deployed after, register a task.
         
     | 
| 
       40 
40 
     | 
    
         | 
| 
       41 
41 
     | 
    
         
             
            ```
         
     | 
| 
       42 
     | 
    
         
            -
            @ruboty add job " 
     | 
| 
      
 42 
     | 
    
         
            +
            @ruboty add job "0 21 * * *" @ruboty dmm cg 24
         
     | 
| 
       43 
43 
     | 
    
         
             
            ```
         
     | 
| 
       44 
44 
     | 
    
         | 
| 
       45 
     | 
    
         
            -
            Notify the 24-hour ranking at every 9 pm.
         
     | 
| 
      
 45 
     | 
    
         
            +
            Notify the 24-hour ranking for CG genre at every 9 pm.
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         | 
| 
       48 
48 
     | 
    
         
             
            ## Thanks
         
     | 
    
        data/doc/ja/README.md
    CHANGED
    
    | 
         @@ -3,7 +3,7 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            # Ruboty DMM
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            ## Ruboty DMMとは
         
     | 
| 
       6 
     | 
    
         
            -
            Ruboty DMMはDMM.R18 
     | 
| 
      
 6 
     | 
    
         
            +
            Ruboty DMMはDMM.R18のランキングをSlackに通知するためのボットです。
         
     | 
| 
       7 
7 
     | 
    
         
             
            現在は同人誌のみになっています。
         
     | 
| 
       8 
8 
     | 
    
         | 
| 
       9 
9 
     | 
    
         
             
            ## インストール
         
     | 
| 
         @@ -41,10 +41,10 @@ gem 'ruboty-cron' 
     | 
|
| 
       41 
41 
     | 
    
         
             
            deploy後タスクを登録します。
         
     | 
| 
       42 
42 
     | 
    
         | 
| 
       43 
43 
     | 
    
         
             
            ```
         
     | 
| 
       44 
     | 
    
         
            -
            @ruboty add job " 
     | 
| 
      
 44 
     | 
    
         
            +
            @ruboty add job "0 21 * * *" @ruboty dmm cg 24
         
     | 
| 
       45 
45 
     | 
    
         
             
            ```
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
     | 
    
         
            -
            ruboty-cron 
     | 
| 
      
 47 
     | 
    
         
            +
            ruboty-cronを使ってCGジャンルのランキングを毎日9時に通知することが出来ます。
         
     | 
| 
       48 
48 
     | 
    
         | 
| 
       49 
49 
     | 
    
         
             
            ## 謝辞
         
     | 
| 
       50 
50 
     | 
    
         
             
            ruboty, ruboty-cronを作ってくれた[r7kamura氏](https://github.com/r7kamura)に感謝
         
     | 
| 
         @@ -3,11 +3,27 @@ module Ruboty 
     | 
|
| 
       3 
3 
     | 
    
         
             
                module Actions
         
     | 
| 
       4 
4 
     | 
    
         
             
                  class Messenger < Ruboty::Actions::Base
         
     | 
| 
       5 
5 
     | 
    
         
             
                    def call
         
     | 
| 
       6 
     | 
    
         
            -
                       
     | 
| 
       7 
     | 
    
         
            -
                      message. 
     | 
| 
      
 6 
     | 
    
         
            +
                      attachments = Ruboty::DMM::Ranking.new(submedia: message.match_data[:submedia], term: message.match_data[:term]).call
         
     | 
| 
      
 7 
     | 
    
         
            +
                      term = term_converter(message.match_data[:term])
         
     | 
| 
      
 8 
     | 
    
         
            +
                      message.reply("#{term}の本日のランキングです。", attachments: attachments)
         
     | 
| 
       8 
9 
     | 
    
         
             
                    rescue => exception
         
     | 
| 
       9 
10 
     | 
    
         
             
                      message.reply("Failed by #{exception.class}")
         
     | 
| 
       10 
11 
     | 
    
         
             
                    end
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                    private
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                    def term_converter(term)
         
     | 
| 
      
 16 
     | 
    
         
            +
                      case term
         
     | 
| 
      
 17 
     | 
    
         
            +
                      when '24'
         
     | 
| 
      
 18 
     | 
    
         
            +
                        '24時間'
         
     | 
| 
      
 19 
     | 
    
         
            +
                      when 'weekly'
         
     | 
| 
      
 20 
     | 
    
         
            +
                        '週間'
         
     | 
| 
      
 21 
     | 
    
         
            +
                      when 'monthly'
         
     | 
| 
      
 22 
     | 
    
         
            +
                        '月間'
         
     | 
| 
      
 23 
     | 
    
         
            +
                      when 'total'
         
     | 
| 
      
 24 
     | 
    
         
            +
                        '全体'
         
     | 
| 
      
 25 
     | 
    
         
            +
                      end
         
     | 
| 
      
 26 
     | 
    
         
            +
                    end
         
     | 
| 
       11 
27 
     | 
    
         
             
                  end
         
     | 
| 
       12 
28 
     | 
    
         
             
                end
         
     | 
| 
       13 
29 
     | 
    
         
             
              end
         
     | 
    
        data/lib/ruboty/dmm/agent.rb
    CHANGED
    
    
    
        data/lib/ruboty/dmm/ranking.rb
    CHANGED
    
    | 
         @@ -2,7 +2,7 @@ module Ruboty 
     | 
|
| 
       2 
2 
     | 
    
         
             
              module DMM
         
     | 
| 
       3 
3 
     | 
    
         
             
                class Ranking
         
     | 
| 
       4 
4 
     | 
    
         
             
                  BASE_URL = 'http://www.dmm.co.jp'.freeze
         
     | 
| 
       5 
     | 
    
         
            -
                   
     | 
| 
      
 5 
     | 
    
         
            +
                  COLORS = %w(7acc28 9dcc28 cc2828 cc6e28 28a9cc 3428cc cc28b4 c0cc28 2886cc 28cca9).map { |hex| "##{hex}" }.freeze
         
     | 
| 
       6 
6 
     | 
    
         | 
| 
       7 
7 
     | 
    
         
             
                  def initialize(arguments)
         
     | 
| 
       8 
8 
     | 
    
         
             
                    @term = discriminate_term(arguments[:term])
         
     | 
| 
         @@ -15,11 +15,11 @@ module Ruboty 
     | 
|
| 
       15 
15 
     | 
    
         
             
                    books = page.search('.rank-rankListItem.fn-setPurchaseChange').map do |element|
         
     | 
| 
       16 
16 
     | 
    
         
             
                      [
         
     | 
| 
       17 
17 
     | 
    
         
             
                        element.search('.rank-name').first.text.strip,
         
     | 
| 
      
 18 
     | 
    
         
            +
                        element.search('img').last.attributes['src'].value,
         
     | 
| 
       18 
19 
     | 
    
         
             
                        "#{BASE_URL}#{element.search('.rank-name').first.search('a').first.attributes.first[1].value}"
         
     | 
| 
       19 
20 
     | 
    
         
             
                      ]
         
     | 
| 
       20 
21 
     | 
    
         
             
                    end
         
     | 
| 
       21 
     | 
    
         
            -
                     
     | 
| 
       22 
     | 
    
         
            -
                    ranking.join("\n\n")
         
     | 
| 
      
 22 
     | 
    
         
            +
                    books.take(10).zip(COLORS).map.with_index(1) { |((title, image, url), color), rank| { title: "#{rank}位: #{title}", title_link: url, image_url: image, color: color } }
         
     | 
| 
       23 
23 
     | 
    
         
             
                  end
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
       25 
25 
     | 
    
         
             
                  private
         
     | 
    
        data/lib/ruboty/dmm/version.rb
    CHANGED
    
    
| 
         @@ -1,18 +1,21 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            describe Ruboty::DMM::Ranking do
         
     | 
| 
       2 
     | 
    
         
            -
              let(: 
     | 
| 
      
 2 
     | 
    
         
            +
              let(:attachments) { described_class.new(arguments).call }
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
       3 
4 
     | 
    
         
             
              let(:submedia) { 'cg' }
         
     | 
| 
       4 
5 
     | 
    
         
             
              let(:arguments) { { submedia: submedia, term: term } }
         
     | 
| 
       5 
6 
     | 
    
         | 
| 
       6 
7 
     | 
    
         
             
              describe '#call' do
         
     | 
| 
       7 
8 
     | 
    
         
             
                context 'with 24 argument' do
         
     | 
| 
       8 
     | 
    
         
            -
                  subject {  
     | 
| 
      
 9 
     | 
    
         
            +
                  subject { attachments }
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
       9 
11 
     | 
    
         
             
                  let(:term) { '24' }
         
     | 
| 
       10 
12 
     | 
    
         | 
| 
       11 
13 
     | 
    
         
             
                  it { is_expected.not_to be_empty }
         
     | 
| 
      
 14 
     | 
    
         
            +
                  it { is_expected.to all(include(:title, :title_link, :image_url, :color)) }
         
     | 
| 
       12 
15 
     | 
    
         
             
                end
         
     | 
| 
       13 
16 
     | 
    
         | 
| 
       14 
17 
     | 
    
         
             
                context 'with not registered argument' do
         
     | 
| 
       15 
     | 
    
         
            -
                  subject { -> {  
     | 
| 
      
 18 
     | 
    
         
            +
                  subject { -> { attachments } }
         
     | 
| 
       16 
19 
     | 
    
         | 
| 
       17 
20 
     | 
    
         
             
                  let(:term) { 'hoge' }
         
     | 
| 
       18 
21 
     | 
    
         | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: ruboty-dmm
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.0.3
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Satoshi Ohmori
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2017- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2017-03-20 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: ruboty
         
     | 
| 
         @@ -119,6 +119,7 @@ files: 
     | 
|
| 
       119 
119 
     | 
    
         
             
            - ".rspec"
         
     | 
| 
       120 
120 
     | 
    
         
             
            - ".rubocop.yml"
         
     | 
| 
       121 
121 
     | 
    
         
             
            - ".travis.yml"
         
     | 
| 
      
 122 
     | 
    
         
            +
            - CHANGELOG.md
         
     | 
| 
       122 
123 
     | 
    
         
             
            - Gemfile
         
     | 
| 
       123 
124 
     | 
    
         
             
            - Gemfile.lock
         
     | 
| 
       124 
125 
     | 
    
         
             
            - LICENSE.txt
         
     |