jav_library 0.1.0 → 0.2.0

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
  SHA256:
3
- metadata.gz: 1fef8af77de5b934cc3014dcbaed2c118db788596c514d5996889e5c4b76bf4f
4
- data.tar.gz: 95b51cff752475ee68c2052a955510c733c255b5e7d047977cb38abd312b0b20
3
+ metadata.gz: 27f87cc61cea0059f504d34590b756b82caf0534ce8e2469f80336a1ffda5cee
4
+ data.tar.gz: c26086fecb1bd16f91d315e17f3ff1e15ee5a3889bb2fe8090ee456a95e26bd8
5
5
  SHA512:
6
- metadata.gz: 59202edb654ab0369bb5158effb553baa828899b3252c928802f5b8ca437b253f8f5ba10e0e4e30c8f799d13ae44fcd4f56938e780189b60fb1383935b9b4734
7
- data.tar.gz: c5765be51a33b4f9b2a151f3b9a1e7b33d5c0a9b0bc95898601a72b2d4c783ec602e035833aa319f86c8f73a24d9de1f010078e9cc62496905c5dd9c1955c04f
6
+ metadata.gz: 83c97469c54fe19ad82608614a26b213e7fd7789491886d7c8a010fc0ee3429a783265daf5cd2bd6eb37907af13138565d1124937238c4f3139f083ad43b1aa9
7
+ data.tar.gz: 6aee5fa6a5f877a9f3ddc562ab9432642e9d1c5c404a13c4259f056007746cddf8d5cc5c9ffa40c610251866ffc5e0fdb44cc1b8376349afdf3cb5918755d4f3
@@ -5,23 +5,44 @@ module JavLibrary
5
5
  HOST = "http://www.javlibrary.com/en/vl_searchbyid.php?keyword="
6
6
 
7
7
  class Client
8
+ attr_reader :success
9
+
8
10
  def initialize
9
- @browser = Watir::Browser.new :firefox
11
+ @browser = Watir::Browser.new :firefox, 'pageLoadStrategy': 'eager'
10
12
  # Disable alerts
11
- @browser.execute_script "window.alert = () => {}";
13
+ @browser.execute_script "window.alert = () => {}"
12
14
  end
13
15
 
14
16
  def load(code)
15
17
  @browser.goto HOST + code
16
18
  @browser.cookies.add "over18", "18"
17
-
19
+
18
20
  # For cloudflare's ddos checking
19
- sleep 10
20
- while @browser.html.include? "<title>Just a moment...</title>"
21
+ begin
22
+ while @browser.html.include? "<title>Just a moment...</title>"
23
+ sleep 0.1
24
+ end
25
+ rescue
26
+ sleep 0.1
27
+ retry
28
+ end
29
+
30
+ # Wait until page is loaded
31
+ until @browser.html.include? 'leftmenu'
21
32
  sleep 0.1
22
33
  end
23
34
 
35
+ @success = !@browser.html.include?('The search term you entered is invalid.')
24
36
  @doc = Nokogiri::HTML @browser.html
37
+
38
+ # if multiple search results
39
+ if @doc.css('.videos .video').length > 1
40
+ url = 'http://www.javlibrary.com/en/'
41
+ url += @doc.at_css('.videos a').attr('href').split('./', 2).last
42
+ @browser.goto url
43
+ @browser.cookies.add 'over18', '18'
44
+ @doc = Nokogiri::HTML(@browser.html)
45
+ end
25
46
  end
26
47
 
27
48
  def title
@@ -30,11 +51,12 @@ module JavLibrary
30
51
  end
31
52
 
32
53
  def cast
33
- @doc.css('#video_cast .star a').map(&:content)
54
+ @doc.css('#video_cast .star a').map {|node| node.content.split('(', 2).first.strip }
34
55
  end
35
56
 
36
57
  def cover
37
- @doc.at_css('#video_jacket_img').attr('src').sub("http", "https")
58
+ src = @doc.at_css('#video_jacket_img').attr('src')
59
+ 'https:' + src.sub('http:', '')
38
60
  end
39
61
 
40
62
  def release_date
@@ -1,3 +1,3 @@
1
1
  module JavLibrary
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jav_library
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - thighstump
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-12-31 00:00:00.000000000 Z
11
+ date: 2019-02-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler