2011-11-02 08:21:09 -04:00
|
|
|
// filebot -script "http://filebot.sourceforge.net/data/shell/rsam.groovy" <options> <folder>
|
2011-11-02 04:26:25 -04:00
|
|
|
|
2011-10-30 12:55:32 -04:00
|
|
|
import net.sourceforge.filebot.similarity.*
|
|
|
|
|
|
|
|
def isMatch(a, b) { new NameSimilarityMetric().getSimilarity(a, b) > 0.9 }
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Rename anime, tv shows or movies (assuming each folder represents one item)
|
|
|
|
*/
|
|
|
|
args.eachMediaFolder { dir ->
|
2011-11-02 04:26:25 -04:00
|
|
|
def n = dir.name
|
|
|
|
def lang = Locale.ENGLISH
|
2011-10-30 12:55:32 -04:00
|
|
|
|
|
|
|
[ [db:anidb, query:{ anidb.search(n, lang).find{ isMatch(it, n) } }],
|
|
|
|
[db:thetvdb, query:{ thetvdb.search(n, lang).find{ isMatch(it, n) } }],
|
|
|
|
[db:themoviedb, query:{ themoviedb.searchMovie(n, lang).find{ isMatch(it, n) } }]
|
|
|
|
].find {
|
|
|
|
def match = it.query()
|
2011-11-02 04:26:25 -04:00
|
|
|
if (match) { rename(folder:dir, db:it.db.name, query:match.name) }
|
2011-10-30 12:55:32 -04:00
|
|
|
return match
|
|
|
|
}
|
|
|
|
}
|