mvtk 0.1.6 → 0.2.0

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: a3405c3bd9f95eb692f304135dec213e2819f877
4
- data.tar.gz: a47c5ad483b2756edbd8bd6dbd839685382f96f2
3
+ metadata.gz: fa18cd88d3d71ad1305779d0cac2df7a858cda14
4
+ data.tar.gz: 4e623115ddc160fdf642e6408b6f5c161dc4ebf1
5
5
  SHA512:
6
- metadata.gz: f4be1be9eee661a6999c6ab14a89b678b4b85fd0b7376b3f1fa40cbae5be2d8b96dcee51ad8fd62901c62cce1925df83b62cec58e3de3e4991dc5d744ed0ac0f
7
- data.tar.gz: e814439b5eb3f275c2f90ab40d8337bc86aa26638fed86529c5d1ef0c047172b8d6fa7c6a702be6e8380435b3e0c65458c8003b6bccdc253c11b97b1a0f0435f
6
+ metadata.gz: 9f95b6953af7f4c13c944e7b2c367ac7e8a308995b2bb4090f927fea04a7534530de0f243d8eab46ec8398007162f950b13b606aa3a0ac6c03f023ace65d448a
7
+ data.tar.gz: a0657408939cb0151a91d20481100186798a5d71a7509a953197cd33fd73263cc7fd24ff07734d819a969e7ef5415a7188ed1b7bb9247b2fac7fe413f686c4e2
data/README.md CHANGED
@@ -4,11 +4,10 @@ This gem install a command `mvtk`, it's not a gem you can use in your software.
4
4
 
5
5
  The goal is simple: take crappy movie filename from a directory and name them the good way for kodi mediacenter using well known scraper.
6
6
 
7
- 3 scraper supported at this Time
7
+ 2 scraper supported at this Time
8
8
 
9
9
  * [mpdb.tv](http://mpdb.tv/)
10
10
  * [themoviedb.org](https://www.themoviedb.org/)
11
- * [media-passion](http://scraper.media-passion.fr/index2.php?Page=Home)
12
11
 
13
12
  ## Installation
14
13
 
@@ -20,7 +19,7 @@ Then first launch will create the configuration file in ~/.config/mvtk.conf
20
19
 
21
20
  Edit **~/.config/mvtk.conf**
22
21
 
23
- * *scraper* = "themoviedb", "mpdb" or "mediapassion", which scraper you Usage
22
+ * *scraper* = "tmdb", "mpdb" which scraper you Usage
24
23
  * *saga_enable* = enable or not saga subdir
25
24
  * *saga_prefix* = a string to prefix saga subdir name (.../terminator/... => .../prefix saganame/...)
26
25
  * *source* = source directory to recursively find movie file
@@ -29,6 +28,8 @@ Edit **~/.config/mvtk.conf**
29
28
  * *min_movie_time* = Minimum number of minutes to determine if the video file is a movie or a tvshow
30
29
  * *year_in_filename* = Allows you to have the year in the filename e.g. "Up (2009)/Up (2009).mkv"
31
30
  * *move_files* = If set true , move instead copy files
31
+ * *tmdb_key* = you api key to use tmdb api
32
+ * *tmdb_lang* = language tu use with tmdb
32
33
 
33
34
 
34
35
  ## Usage
data/lib/mvtk/config.rb CHANGED
@@ -6,7 +6,7 @@ module Mvtk
6
6
  def self.confcreate (conffilepath)
7
7
  doc = IniParse.gen do |doc|
8
8
  doc.section("mvtk") do |mvtk|
9
- mvtk.option("scraper","mpdb")
9
+ mvtk.option("scraper","tmdb")
10
10
  mvtk.option("saga_enable","true")
11
11
  mvtk.option("saga_prefix","1-Saga")
12
12
  mvtk.option("source","/home/torrent/finish.seedbox")
@@ -15,6 +15,8 @@ module Mvtk
15
15
  mvtk.option("min_movie_time","60")
16
16
  mvtk.option("year_in_filename","false")
17
17
  mvtk.option("move_files","false")
18
+ mvtk.option("tmdb_key","YOUR_KEY")
19
+ mvtk.option("tmdb_lang","en")
18
20
  end
19
21
  end
20
22
  doc.save(conffilepath)
data/lib/mvtk/search.rb CHANGED
@@ -1,34 +1,29 @@
1
1
  require 'nokogiri'
2
2
  require 'open-uri'
3
3
  require 'uri'
4
+ require 'themoviedb-api'
4
5
 
5
6
  module Mvtk
6
7
 
7
- def self.mediapassion(moviename)
8
+ def self.themoviedb(moviename)
8
9
  result = []
9
- searchresult = Nokogiri::HTML(open("http://passion-xbmc.org/scraper/ajax.php?Ajax=Search&Title=#{URI.escape(moviename.tr(' ', '+'))}"), nil , 'UTF-8')
10
- searchresult.css('a').take(10).each do |link|
11
- mtitle = link.content.tr('[', '(').tr(']', ')')
12
- detailpage = Nokogiri::HTML(open("http://passion-xbmc.org/scraper/#{link['href']}"))
13
- msaga = detailpage.css("#sagaWrapper").css('p').text[5..-1]
14
- unless msaga.nil? then
15
- result.push("#{mtitle}/#{msaga.rstrip.lstrip}")
16
- else
17
- result.push("#{mtitle}/")
18
- end
10
+
11
+ unless $conf['tmdb_key'] then
12
+ puts "You need tu specify your api key to use this scraper"
13
+ exit 1
14
+ end
15
+ unless $conf['tmdb_lang'] then
16
+ $conf['tmdb_lang'] = 'en'
19
17
  end
20
- return result
21
- end
22
18
 
23
- def self.themoviedb(moviename)
24
- result = []
25
- searchresult = Nokogiri::HTML(open("https://www.themoviedb.org/search?query=#{URI.escape(moviename.tr(' ', '+'))}"), nil , 'UTF-8')
26
- searchresult.css("div.info").take(10).each do |link|
19
+ Tmdb::Api.key($conf['tmdb_key'])
20
+ Tmdb::Api.language($conf['tmdb_lang'])
21
+
22
+ Tmdb::Search.movie(moviename).results.first(10).each do |movie|
27
23
  msaga = nil
28
- myear = link.css('span.release_date').text.split("-")[0].strip
29
- mtitle = "#{link.css('a').first.content} (#{myear})"
30
- detailpage = Nokogiri::HTML(open("https://www.themoviedb.org#{link.css('a').first['href']}"))
31
- msaga = detailpage.at('p:contains("Part of the")').css('a').text if detailpage.at('p:contains("Part of the")')
24
+ myear = movie.release_date.split('-').first
25
+ mtitle = "#{movie.title} (#{myear})"
26
+ msaga = Tmdb::Movie.detail(movie.id).belongs_to_collection.name.gsub(" - Saga", "") if Tmdb::Movie.detail(movie.id).belongs_to_collection
32
27
  unless msaga.nil? then
33
28
  result.push("#{mtitle}/#{msaga}")
34
29
  else
@@ -63,9 +58,9 @@ module Mvtk
63
58
  end
64
59
 
65
60
  def self.search (moviename)
66
- if $conf['scraper'] == "mediapassion" then
67
- result = self.mediapassion(moviename)
68
- elsif $conf['scraper'] == "themoviedb" then
61
+ if $conf['scraper'] == "themoviedb" then
62
+ result = self.themoviedb(moviename)
63
+ elsif $conf['scraper'] == "tmdb" then
69
64
  result = self.themoviedb(moviename)
70
65
  elsif $conf['scraper'] == "mpdb" then
71
66
  result = self.mpdb(moviename)
data/lib/mvtk/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Mvtk
2
- VERSION = "0.1.6"
2
+ VERSION = "0.2.0"
3
3
  end
data/mvtk.gemspec CHANGED
@@ -32,6 +32,7 @@ Gem::Specification.new do |spec|
32
32
  spec.add_dependency "ruby-progressbar", ">= 1.7.5"
33
33
  spec.add_dependency "filesize", "~> 0.1.1"
34
34
  spec.add_dependency "streamio-ffmpeg", ">= 1.0"
35
+ spec.add_dependency "themoviedb-api", ">= 1.2.0"
35
36
 
36
37
  spec.add_development_dependency "bundler", "~> 1.10"
37
38
  spec.add_development_dependency "rake", "~> 10.0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mvtk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Celedhrim
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-03-08 00:00:00.000000000 Z
11
+ date: 2017-06-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: iniparse
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '1.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: themoviedb-api
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: 1.2.0
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: 1.2.0
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: bundler
99
113
  requirement: !ruby/object:Gem::Requirement