harunica 0.0.9 → 0.0.10

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a473e5f05477ad4e556ad676aecb6d33145993eb
4
- data.tar.gz: 1a54f92bcee10539e56b59a2545ed021b37b0a9d
3
+ metadata.gz: 07a12491d86266a431a270428f8b227b290f788c
4
+ data.tar.gz: 7aae044b6fb17add40dc612367d89509901029ea
5
5
  SHA512:
6
- metadata.gz: c7483b62590ac6c65721f6be9991075173f68f9e1cdb7f6829ca76292a72d697eb00a95b2705d02c16afbfc5f11f8039a698cb6ed5fcc52bcb65653f1e231c97
7
- data.tar.gz: af38e3e5fce11f3291a153c6df556e3934b92c4a0abe23e0db4a2dea81923203530768834c2920926182e27ce9a7e9bf30753390e1c27649a17887f4c5970c26
6
+ metadata.gz: 0343ed68757d77c57ef5e1a5693a1c12ef8fb8e839080f426c0ac5cdf99c1aafcb79d968253857c06a0f6f380073f8f31925d7bf3d60d69c471eca30e5575089
7
+ data.tar.gz: 3ffe84cc6cb67b12e757a735c2daf8eb5713ca6b2c0c02fff902a8a3a2b35b8ff900be299955d19ee324852709bc229c5725d9cbd600a552f33bc8763bcf536c
@@ -11,9 +11,7 @@ module Harunica
11
11
  end
12
12
 
13
13
  def doc
14
- @doc ||= begin
15
- interval = (ENV["HARUNICA_INTERVAL"] || 1.0).to_f
16
- sleep(interval)
14
+ @doc ||= Harunica::Scraping.interval.wait do
17
15
  ::Nokogiri::HTML(::Kernel.open(url, &:read), nil, 'utf-8')
18
16
  end
19
17
  end
@@ -0,0 +1,18 @@
1
+ module Harunica
2
+ module Scraping
3
+ class Interval
4
+ attr_reader :time
5
+
6
+ def initialize(time)
7
+ @time = (ENV["HARUNICA_INTERVAL"] || time || 1.0).to_f
8
+ end
9
+
10
+ def wait(before_exec=true, &block)
11
+ sleep(@time) if before_exec
12
+ res = block.call
13
+ sleep(@time) unless before_exec
14
+ res
15
+ end
16
+ end
17
+ end
18
+ end
@@ -4,7 +4,24 @@ module Harunica
4
4
  autoload :ListPage, __dir__ + '/scraping/list_page'
5
5
  autoload :Url, __dir__ + '/scraping/url'
6
6
  autoload :VideoPage, __dir__ + '/scraping/video_page'
7
+ autoload :Interval, __dir__ + '/scraping/interval'
7
8
 
8
9
  THUMBNAIL_SERVER_URL = 'http://tn-skr1.smilevideo.jp'
10
+
11
+ def self.env
12
+ @@env
13
+ end
14
+
15
+ def self.env=(v)
16
+ @@env = v
17
+ end
18
+
19
+ def self.test?
20
+ @@env == 'test'
21
+ end
22
+
23
+ def self.interval
24
+ self.test? ? (@@test_interval ||= Interval.new 0.01) : (@@interval ||= Interval.new)
25
+ end
9
26
  end
10
27
  end
@@ -1,3 +1,3 @@
1
1
  module Harunica
2
- VERSION = "0.0.9"
2
+ VERSION = "0.0.10"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: harunica
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - mosop
@@ -101,6 +101,7 @@ files:
101
101
  - lib/harunica.rb
102
102
  - lib/harunica/scraping.rb
103
103
  - lib/harunica/scraping/html.rb
104
+ - lib/harunica/scraping/interval.rb
104
105
  - lib/harunica/scraping/list_page.rb
105
106
  - lib/harunica/scraping/url.rb
106
107
  - lib/harunica/scraping/video_page.rb