maimailog 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6a4121923591a09603eb4baa4e7ff5ab597f385e
4
- data.tar.gz: d5c20934a7c64e68a5b9b16e115699eb580ac05c
3
+ metadata.gz: 5d948843f76ae075112c6549a948fd49089270ad
4
+ data.tar.gz: e0e70d2ca5e8b514135244dbfd472e66719ea4e4
5
5
  SHA512:
6
- metadata.gz: 85f671cf4f35f70694c90b2fa9da802a2f02ccc53bbb4d467c3694da48e9c5a0537fc5f4c63fd98a6475699e1269f684a89875765bf80610652df2d174f8d9d4
7
- data.tar.gz: b498e23e5718764fb851cba758eb1bd647865a5767be2f0c432d1aad9fc2eb5ae514ed2a025e3a0c9e6daf5c88b15086505d42ca8549535568d4da8aa890450a
6
+ metadata.gz: 51599d299ba7e3bda4144b7ab5e3a05ba68fb470b6de2bcfd4fde11798daeadfd99846a293ebf9979c54cb94c0621a9fae2fc5ac547930a7dad1c78be6e8246f
7
+ data.tar.gz: d838dbea125de0f018fa0947821ce1ac6160ed0ca03ac82d8235d948b173503919bfeffd62b90b3b2d5b29ad34106278a8f57c00c69b94701491d7da1da8ef12
@@ -3,6 +3,7 @@ require 'date'
3
3
  require 'maimailog/version'
4
4
  require 'maimailog/data/status'
5
5
  require 'maimailog/data/detail'
6
+ require 'maimailog/crawler/error'
6
7
  require 'maimailog/crawler/base'
7
8
  require 'maimailog/crawler/status'
8
9
  require 'maimailog/crawler/history'
@@ -0,0 +1,7 @@
1
+ module Maimailog
2
+ module Crawler
3
+
4
+ class DataNotFoundError < StandardError; end
5
+
6
+ end
7
+ end
@@ -78,7 +78,9 @@ module Maimailog
78
78
  end
79
79
  page = @agent.get("https://maimai-net.com/maimai-mobile/results.html?p=#{page_num}&#{page.uri.query[/sid=[\w]+/]}")
80
80
 
81
- page.search('//div[@id="accordion"]/ul/li//a').each do |elm|
81
+ links = page.search('//div[@id="accordion"]/ul/li//a')
82
+ raise DataNotFoundError.new('maimai play data not found') if links.size == 0
83
+ links.each do |elm|
82
84
  data = convert_data(@agent.get(elm[:href]))
83
85
  sleep(@sleep_duration)
84
86
  yield data
@@ -88,8 +90,11 @@ module Maimailog
88
90
  # プレイ履歴を最初から最後まで順番に取得していく
89
91
  def fetch_all(&block)
90
92
  0.upto(9999) do |page_num|
91
- data = fetch(page_num, &block)
92
- break if data.size == 0
93
+ begin
94
+ fetch(page_num, &block)
95
+ rescue DataNotFoundError
96
+ break
97
+ end
93
98
  end
94
99
  end
95
100
  end
@@ -1,3 +1,3 @@
1
1
  module Maimailog
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maimailog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - utahta
@@ -66,6 +66,7 @@ files:
66
66
  - Rakefile
67
67
  - lib/maimailog.rb
68
68
  - lib/maimailog/crawler/base.rb
69
+ - lib/maimailog/crawler/error.rb
69
70
  - lib/maimailog/crawler/history.rb
70
71
  - lib/maimailog/crawler/status.rb
71
72
  - lib/maimailog/data/detail.rb