subdl 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: d2db16138366c1df81aeaa2223014160c3d3d34c
4
- data.tar.gz: c4766a193aab8bd65530651d666cb0aeb0ae3f5c
3
+ metadata.gz: 5739ef670d14d5e93c31f3b60b0b28ce814467b8
4
+ data.tar.gz: 46cdcde8351cca83cb22afb7b7bf44cfed7ff7b7
5
5
  SHA512:
6
- metadata.gz: ecfbaf73ca2b4cd282b40d5f0599393cd6beeb8d35414439ffa83d2592b1849eb69f5c2636df0eb5068f521873805962c67c5e12b95ef3b81f6be7edac5f075f
7
- data.tar.gz: fed07781bea4e3620b5cb5433cbdbfa2b6dbd20e2046ec073a36cdc13f07064f23ae39341dd358d3870d085a4a0df099f1beaf418326c3e7e3e76988de8e4305
6
+ metadata.gz: f21cdae5b3368b2ab515426e23bd154f89fb921d41b5bb1d72bb58c82e53f57e5117ab84bd4372de808db69c12efdcfa20eea690ecb9647857220aae1c39bb41
7
+ data.tar.gz: 46fdb557d1c4108f911e94c76df23fb98c1b31d300f86a13bda766045ace84772af6eecd595374eb9cd49547ae12cf65dbbf23d3404c5f87f1663ce3964353e6
@@ -0,0 +1,34 @@
1
+ require 'mechanize'
2
+
3
+ class ItasaAgent
4
+
5
+ def initialize
6
+ @agent = Mechanize.new do |a|
7
+ a.user_agent_alias = 'Mac FireFox'
8
+ end
9
+ end
10
+
11
+ def get url
12
+ @agent.get url
13
+ end
14
+
15
+ def login username, password
16
+ return if logged_in?
17
+ page_where_to_login = 'http://www.italiansubs.net'
18
+ home_page = @agent.get page_where_to_login
19
+ login_form = home_page.form 'login'
20
+ login_form.username = username
21
+ login_form.passwd = password
22
+ @page = @agent.submit(login_form)
23
+ end
24
+
25
+ private
26
+
27
+ def logged_in?
28
+ return false unless @page
29
+ link_that_exists_only_once_logged = @page.search(
30
+ "//a[@href='forum/index.php?action=unreadreplies']")
31
+ return link_that_exists_only_once_logged.first != nil
32
+ end
33
+ end
34
+
@@ -0,0 +1,68 @@
1
+ require 'mechanize'
2
+ require 'nokogiri'
3
+
4
+ class SubtitlesNet
5
+ def initialize
6
+ @agent = Mechanize.new
7
+ end
8
+ def search text, season, episode
9
+ @agent.get 'http://www.sub-titles.net/' do |page|
10
+ form = page.form_with( :name => 'sf3') do |search|
11
+ search.sK = text
12
+ search.sTS = season
13
+ search.sTE = episode
14
+ search.field_with(name:'sJ').value=2
15
+ # 2 -> Inglese
16
+ # 9 -> Italiano
17
+ end
18
+ return form.submit.body
19
+ end
20
+ end
21
+ def get url
22
+ @agent.get(url).body
23
+ end
24
+ end
25
+
26
+ class SearchResults
27
+ def initialize html
28
+ @doc = Nokogiri::HTML(html)
29
+ end
30
+
31
+ def subtitles
32
+ return @doc.css('tr.a td').map do |cell|
33
+ SearchResultRow.new cell
34
+ end
35
+ end
36
+
37
+ class SearchResultRow
38
+ def initialize cell
39
+ @cell = cell
40
+ end
41
+ def title
42
+ @cell.xpath('.//a[position()=2]').text
43
+ end
44
+ def href
45
+ @cell.xpath('.//a[position()=2]/@href').text
46
+ end
47
+ def filename
48
+ @cell.xpath(".//span[@class='opis'][1]").text
49
+ end
50
+ def season()
51
+ @cell.xpath(".//span[@class='opis'][2]/b[1]").text
52
+ end
53
+ def episode()
54
+ @cell.xpath(".//span[@class='opis'][2]/b[2]").text
55
+ end
56
+ end
57
+ end
58
+
59
+ class DetailsPage
60
+ def initialize html
61
+ @doc = Nokogiri::HTML(html)
62
+ end
63
+ def zip_location
64
+ box = @doc.css('div.box')
65
+ box.css('a @href').first.value
66
+ end
67
+ end
68
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: subdl
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
  - Andrea Francia
@@ -87,8 +87,10 @@ executables:
87
87
  extensions: []
88
88
  extra_rdoc_files: []
89
89
  files:
90
- - lib/subdl.rb
91
90
  - bin/subdl
91
+ - lib/subdl/italiansubs.rb
92
+ - lib/subdl/subtitles_net.rb
93
+ - lib/subdl.rb
92
94
  homepage: https://github.com/andreafrancia/subdl
93
95
  licenses: []
94
96
  metadata: {}