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 +4 -4
- data/lib/subdl/italiansubs.rb +34 -0
- data/lib/subdl/subtitles_net.rb +68 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5739ef670d14d5e93c31f3b60b0b28ce814467b8
|
4
|
+
data.tar.gz: 46cdcde8351cca83cb22afb7b7bf44cfed7ff7b7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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.
|
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: {}
|