Need direction on script for custom filename parsing

Any questions? Need some help?
Post Reply
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Need direction on script for custom filename parsing

Post by DavidRTurner »

After a lot of TV scripting experiments, I've got things about right, but I'm now working on the movie collection.

I'd like to be able to do a few things, some of which may (and some of which may not) be possible - hoping for some direction!

Here's my script at this time:
{n.replaceFirst(/^(?i)(The)\s(.+)/, /$2, $1/)} ({y}){' D'+pi} [{(info.runtime)} min] {actors.take(3)} {genres.take(3)}

Quite simple compared to others; Drop leading 'The' to the rear of the title, add a year, keep the first 3 actors & genres.


But a few things I'd LIKE to do:

-keep 'DVD1', 'DVD2'... CD1, CD2 are good when a video file is split; but I only have a couple of split-main-movie DVDs, but lots of movie disc & bonus disc (ie. DVD1, DVD2...) sets.
I know from this thread http://www.filebot.net/forums/viewtopic.php?f=5&t=806 that it should be possible, but I'm unable to figure it out properly (or find a more detailed thread on this item).

-similarly to the above, I want to keep my personal choice of keywords (i.e. CE, SE, SCE, Extended Edition, etc. for DVDs) - somehow I should be able to have some script phrase exclude a check for these, or perhaps replace them with themselves if found?
OR - is it possible to have FB identify an .iso file and assume DVD vs CD from the file extension (or fileSIZE)?

-there are a handful of movies I'd like to force a 'manual' rename structure on - mostly to force a numeric word when the proper search result is alpha (i.e. I'd like '12 Monkeys' rather than 'Twelve Monkeys').
In this example, I'd like to have FB force a number check for first-word-in-the-filename (would a long .ReplaceAll string be the best way?)
In another example, 'Aeon Flux' comes up with a special character AE (I don't know the ASCII code to drop it here...) and I'd rather not have special characters... would a .ReplaceAll also be the best way??? (I'm hoping there's a way to have an ASCII check of some sort & limit suggestions to 0-9 and A-Z).

-in order to keep certain alphabetical order, I have added a numeric reference to films with sequels - i.e. 'First Blood' becomes 'Rambo 1- First Blood' so that it gets sorted with the rest of the 'Rambo' films.
Any thoughts other than the manual changes I make now? Each time I run FB on the files, I need to re-name them, of course... so some way of automating it would be great (this is the one I expect cannot be done by FB... but maybe in the future, there'd be some manual over-ride for some parts of the process?)
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Need direction on script for custom filename parsing

Post by rednoah »

1.
You're probably looking for match() and matchAll() to retain tokens from the original filename or path.

You will find many many examples here:
viewtopic.php?f=5&t=2

2.
You can use {file} to access the File object, so you can use {file.length()} to get the size in bytes of that file. The rest is just a if then else.

3.
As for numbers there's probably a really smart way to do it, maybe with access some Unicode tables that are bundles with the JRE or ICU4J, though lots of replace A B will probably work best. You can put the replacement mappings into a external CSV file.

4.
You can use the ascii() function. I have no idea how ICU4J will transiterate AE though. :D

5.
If you want to sort movie by collection you will probably find the {collection} binding useful.
:idea: Please read the FAQ and How to Request Help.
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Re: Need direction on script for custom filename parsing

Post by DavidRTurner »

rednoah wrote:1.
You're probably looking for match() and matchAll() to retain tokens from the original filename or path.

You will find many many examples here:
viewtopic.php?f=5&t=2
I can't get match() to work, but I have so far been able to use contains() so I think I'm good.
Some time if I can figure out match(), it may do better for me.

The rest, I haven't had time to try today, but I can now find a few examples, so I will get to them all... Thanks!!
rednoah wrote:2.
You can use {file} to access the File object, so you can use {file.length()} to get the size in bytes of that file. The rest is just a if then else.

3.
As for numbers there's probably a really smart way to do it, maybe with access some Unicode tables that are bundles with the JRE or ICU4J, though lots of replace A B will probably work best. You can put the replacement mappings into a external CSV file.

4.
You can use the ascii() function. I have no idea how ICU4J will transiterate AE though. :D

5.
If you want to sort movie by collection you will probably find the {collection} binding useful.
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Re: Need direction on script for custom filename parsing

Post by DavidRTurner »

Quick one: how can I determine if a field has any content, or is empty?
i.e. the logic might look like "if {genres.count}=0 then '_No Genre Listed'"
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Need direction on script for custom filename parsing

Post by rednoah »

Code: Select all

any{genres[0]}{'No Genre'}
@see viewtopic.php?f=5&t=1895
:idea: Please read the FAQ and How to Request Help.
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Re: Need direction on script for custom filename parsing

Post by DavidRTurner »

Red - I can't get that to work; the genres[0] will fail about half the time.
It's as if half of the 'missing' genres have blanks, where it works to return the NO GENRE string; but the other half of the 'missing' genres have empty spaces, which return a blank.
I've worked around it for now, though. Still trying to study some Groovy to figure it out.

Meantime, I've moved on to a folder-path-by-decade issue.

Code: Select all

{if (y>1900){y+"Xs"} else if (airdate.year>1900) {airdate.year+"Ys"} else '_NO YEAR'}
will work except if both year & airdate fields are empty.
I want it to return _NO YEAR, but it returns nothing.

I've worked at least 6 hours on this... some help would be appreciated, as I know it must be a simple flaw in my code or logic... :?
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Need direction on script for custom filename parsing

Post by rednoah »

Have you read the manual?
viewtopic.php?f=5&t=1895

Make sure you understand the The Unwind-on-Undefined Behaviour.


Which series/movie has illegal genere data? You can just use {genres} to see. There shouldn't be any empty string or null values in that list.


I'd do it like this:

Code: Select all

{any{((int)y / 100)+'00 ys'}{'No Year'}}
:idea: Please read the FAQ and How to Request Help.
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Re: Need direction on script for custom filename parsing

Post by DavidRTurner »

I've read, and tried to comprehend, but I'm only getting some of it.
However, now I believe I understand the way bindings work, and the genres issue seems resolved, thank you.
Sometimes what one needs is just a pointer to something that one may have skimmed over without realizing was actually the answer!!

As to the year/decade issue; using the 'any{}' seems to have allowed me to complete the task...
Again, thanks...
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Re: Need direction on script for custom filename parsing

Post by DavidRTurner »

I've finally given up on finding a solution myself... the genres for some data simply don't "exist" and I don't know why.
I'm hopeful that 1) there IS a solution, and 2) someone can explain it.

Here's my (documented) format:

Code: Select all

{
//
Section 1
1) Set location for sorted files to go (Z:\Premiers\SORTED).
2) Check genres - if any of the genres are X, then use Y - this selects all Comedy as a primary sort, then Sci Fi, etc...
3) If no specific genre found, use '_NO_GENRE'.
NOTE: folder path slash must be right up against the brackets, else a blank space will appear.  This may be correctable, but I haven't found a solution yet, to allow the next field to be on a separate line.
4a) If a series start year (y) exists, then use it to sort into decades (i.e. 1987 becomes 1980s).
4b) If no series start year exists, try the airdate year - this particular formatting is for my Premiers collection, so all episodes are S01E01 anyway.
4c) If neither year exists, set field to 'YEAR' so it can be sorted separately, for later review.
NOTE: folder path slash must be right up against the brackets, else a blank space will appear.  This may be correctable, but I haven't found a solution yet, to allow the next field to be on a separate line.
5a) Series name (n) with the typical Uppercase first letter, lower rest of word; A/An/The to the back of the title, and a few punctuation corrections (characters Windows doesn't like in filenames).
5b) Set numerical references (1st, 2nd, 3rd...) to lowercase to avoid 1St, 2Nd, 3Rd...
5c) Set Roman Numerals to uppercase.
5d) Set common uppercase words.
5e) Set common lowercase words.
5f) Set a few unique 'phrases' that might otherwise be considered a word if part of another word.
5g) STILL ISSUES WITH some - US, AU, etc. - there should be a more defined formatting option I haven't discovered yet...
6a) TVRage brings back a lot of 'empty' genres & networks, despite them having data.  FB is treating some of the blanks as 'blank' and some as 'missing', thus I cannot figure a way to cover both with one function.
6b) When there is NO GENRE RESULT, try full line with Z:\...
6c) When this fails (seemingly depends on the db in use) where genre & network are blank/missing, try dropping the any-genres from inside the first curly-bracket and the curly-bracket 'GENRES' just before the folder slash at the end of the operation.
6d) Still working on this.........
}

Z:\Premiers\SORTED\{if(genres.contains
('Comedy')) {'Comedy'} else if (genres.contains
('Science Fiction')) {'Sci Fi'} else if (genres.contains
('Science-Fiction')) {'Sci Fi'} else if (genres.contains
('Fantasy')) {'Fantasy'} else if (genres.contains
('Action')) {'Action'} else if (genres.contains
('Thriller')) {'Thriller'}  else if (genres.contains
('Documentary')) {'Documentary'} else if (genres.contains
('News')) {'Documentary'} else if (genres.contains
('Reality')) {'Reality'} else if (genres.contains
('Drama')) {'Drama'} else if (genres.contains
('Crime')) {'Drama'} else if (genres.contains
('Horror')) {'Horror'} else if (genres.contains
('Wildlife')) {'Wildlife'} else if (genres.contains
('Travel')) {'Travel'} else if (genres.contains
('Food')) {'Food'} else if (genres.contains
('Home and Garden')) {'Home and Garden'} else if (genres.contains
('Family')) {'Family'} else if (genres.contains
('Special Interest')) {'Special Interest'} else if (genres.contains
('Educational')) {'Educational'} else if (genres.contains
('Children')) {'Children'} else if (genres.contains
('Animation')) {'Animation'} else if (genres.contains
('Lifestyle')) {'Lifestyle'} else if (genres.contains
('Game')) {'Game'} else if (genres.contains
('Game Show')) {'Game'} else if (genres.contains
('History')) {'History'} else if (genres.contains
('Mini-Series')) {'MiniSeries'} else if (genres.contains
('Talk Show')) {'Talk Show'} else if (genres.contains
('Sport')) {'Sports'} else if (genres.contains
('Sports')) {'Sports'} else

'_GENRE'}\{any{((int)y/10)+'0s'} {any{((int)airdate.year/10)+'0s'}{airdate.year}} {'_YEAR'}}\{n.upperInitial() .lowerTrail()
.replaceFirst(/^(?i)(The|A|An)\s(.+)/, /$2, $1/) .replaceAll(/[`´‘’“”""]/, "'") .replaceAll(/[:]/, "- ") .replaceAll(/[;]/, ", ") .replaceAll(/[?|]/, "!") .replaceAll(/ /, " ")
.replaceAll(/\b[0-9](?i:th|nd|rd|st|s)\b/, { it.lower() })
.replaceAll(/\b(?i:I|II|III|IV|V|VI|VII|VIII|IX|X|XI|XII|XIII|XIV|XV|XVI|XVII|XVIII|XIX|XX|XXI|XXII|XXIII|XXIV|XXV|XXVI|XXVII|XXVIII|XXIX|XXX)\b/, { it.upper() })
.replaceAll(/\b(?i:aka|bff|cmt|nfl|mtv|mvp|nyc|fbi|cia|gb|usa|cctv|csi|fyi|nasa|nypd|bbc|nz|uk|ncis|csi|pd|ocd|wwi|wkrp|bbq|tv|sg-1|fm|dj|diy|qi|rv|sos|ufo|wwi|wwii|wpc|hd| cp| cn| er| la)\b/, { it.upper() })
.replaceAll(/\b(?i:N'| on| or| of| the| an| and| at| by| with| is| in| it| to| than| for| are| vs)\b/, {it.lower() })
.replaceAll(/(Dc)/, "DC")
.replaceAll(/(Dci)/, "DCI")
.replaceAll(/(NY)/, "NY")
.replaceAll(/(Nz)/, "NZ")
.replaceAll(/(Uk)/, "UK")
.replaceAll(/(Us)/, "US")
.replaceAll(/(USe)/, "Use")
.replaceAll(/(Usa)/, "USA")
.replaceAll(/(Rupaul)/, "RuPaul")
.replaceAll(/(Versus)/, "vs")
.replaceAll(/(Mca)/, "McA") .replaceAll(/(Mcb)/, "McB") .replaceAll(/(Mcc)/, "McC") .replaceAll(/(Mcg)/, "McG")
}

{
//
Section 2
1) Find the start year of the series & append to the (above) name.
1a) If there is anything in the year (y) then use it.
1b) Else if there is anything in the airdate then use it.
1c) Else use 'YEAR'.
2) Find the broadcasting network of the show.
2b) If there is anything in the network field, use it.
2b) Else use 'NETWORK'.
}

({any{y} {any{airdate.year}{airdate.year}} {'YEAR'}}, {any{info.network} {'NETWORK'}})

{
//
Section 3
1) Set episode number format as SeasonXXEpisodeXX
2) Same operators as above to clean up episode title name (t)
}

{s00e00} -
{t.upperInitial() .lowerTrail()
.replaceFirst(/^(?i)(The|A|An)\s(.+)/, /$2, $1/) .replaceAll(/[`´‘’“”""]/, "'") .replaceAll(/[:]/, "- ") .replaceAll(/[;]/, ", ") .replaceAll(/[?|]/, "!") .replaceAll(/ /, " ")
.replaceAll(/\b[0-9](?i:th|nd|rd|st|s)\b/, { it.lower() })
.replaceAll(/\b(?i:I|II|III|IV|V|VI|VII|VIII|IX|X|XI|XII|XIII|XIV|XV|XVI|XVII|XVIII|XIX|XX|XXI|XXII|XXIII|XXIV|XXV|XXVI|XXVII|XXVIII|XXIX|XXX)\b/, { it.upper() })
.replaceAll(/\b(?i:aka|bff|cmt|nfl|mtv|mvp|nyc|fbi|cia|gb|usa|cctv|csi|fyi|nasa|nypd|bbc|nz|uk|ncis|csi|pd|ocd|wwi|wkrp|bbq|tv|sg-1|fm|dj|diy|qi|rv|sos|ufo|wwi|wwii|wpc|hd| cp| cn| er| la)\b/, { it.upper() })
.replaceAll(/\b(?i:N'| a| on| or| of| the| an| and| at| by| with| is| in| it| to| than| for| are| vs)\b/, {it.lower() })
.replaceAll(/(Dc)/, "DC")
.replaceAll(/(Dci)/, "DCI")
.replaceAll(/(NY)/, "NY")
.replaceAll(/(Nz)/, "NZ")
.replaceAll(/(Uk)/, "UK")
.replaceAll(/(Us)/, "US")
.replaceAll(/(USe)/, "Use")
.replaceAll(/(Usa)/, "USA")
.replaceAll(/(Rupaul)/, "RuPaul")
.replaceAll(/(Versus)/, "vs")
.replaceAll(/(Mca)/, "McA") .replaceAll(/(Mcb)/, "McB") .replaceAll(/(Mcc)/, "McC") .replaceAll(/(Mcg)/, "McG")
}

{
//
Section 4
1) If filename (fn) contains phrase 'CD' or 'Part' or 'Pt', change to/keep as 'Pt' so a split episode doesn't try to get overwritten.
}

{fn.contains('CD1') ? ' (Pt1)':""}{fn.contains('CD2') ? ' (Pt2)':""}{fn.contains('CD3') ? ' (Pt3)':""}
{fn.contains('Part1') ? ' (Pt1)':""}{fn.contains('Part2') ? ' (Pt2)':""}{fn.contains('Part3') ? ' (Pt3)':""}
{fn.contains('Pt1') ? ' (Pt1)':""}{fn.contains('Pt2') ? ' (Pt2)':""}{fn.contains('Pt3') ? ' (Pt3)':""}

{
//
Section 5
1) Check airdate for the episode airdate; if exist, use it; else check starting year; if exist, use it; else use 'NO_AIRDATE'.
2) Where no airdate exists, but year exists, use year & add '-xx-xx' to illustrate it's a fix for a missing airdate.
3) Check if any genres exist; if so, use the first 3; if not, use 'NO_GENRE'.
}

({any{airdate}{any{y}{'AIRDATE'}}}) {genres.take(3) ?: '[GENRE]'}


{
//
Section 6
1) Match the network against my CSV file to get country of origin - if not found in CSV, use the network field; research & add that network to the CSV to update.
}

[{csv('Z:/TV Networks List.csv').get(info.network) ?: info.network }]
I (think I have) tried every technique - certainly I've searched the site/forums inside & out - but there are still several hundred shows that escape me.

EXAMPLES:
$#! My Dad Says (2010, NETWORK) S01E01 - Pilot (2010-09-23) []
is a comedy, on both TheTVDB & TVRage; yet it comes back with no genres.
While it has a YEAR, there is no genre. It also fails to return the network.
So the result is
Z:/Premiers/SORTED/2010s/$#! My Dad Says (2010, NETWORK) S01E01 - Pilot (2010-09-23) []
when it should be
Z:/Premiers/SORTED/Comedy/2010s/$#! My Dad Says (2010, CBS) S01E01 - Pilot (2010-09-23) [Comedy]
In fact, this looks like it has everything one needs; so why is some coming back blank?
http://www.tvrage.com/Shit_My_Dad_Says

America's Hardest Bounty Hunters (YEAR, NETWORK) S01E01 - Season 1, Episode 1 (AIRDATE) []
On TVRage, there is some data, but nothing comes back. There is a year (but no airdate) and genres listed.
In this case, the format finds no year, and (correctly for a missing year) replaces the missing year with _YEAR, but does not give me a _GENRE to replace the (missing?) genre.
It comes back as
Z:/Premiers/SORTED/_YEAR/America's Hardest Bounty Hunters (YEAR, NETWORK) S01E01 - Season 1, Episode 1 (AIRDATE) []
but should be
Z:/Premiers/SORTED/_GENRE/_YEAR/America's Hardest Bounty Hunters (YEAR, NETWORK) S01E01 - Season 1, Episode 1 (AIRDATE) []
http://www.tvrage.com/Americas_Hardest_Bounty_Hunters


I clear the cache (with "filebot -clear-cache") frequently (each time I try a big run of files), so it pulls fresh data.

I've kept up with the current builds, including the December one.
Is there conceivably something wrong with my system? Windows 7 Pro 64.
Anything I can check?
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Need direction on script for custom filename parsing

Post by rednoah »

It seems odd that you're focusing on TVRage. I highly recommend using TheTVDB and only TheTVDB supports all features.

If you use TVRage it will still look up full metadata on TheTVDB. Extended metadata is always based on TheTVDB or TheMovieDB and not on your query data source.

I suspect the TVRage and TheTVDB names don't match properly, so getting full TheTVDB metadata for TVRage search result may fail some times.

Is this an issue even if you use TheTVDB for lookup? Or only with TVRage?
:idea: Please read the FAQ and How to Request Help.
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Re: Need direction on script for custom filename parsing

Post by DavidRTurner »

I've finally given up on finding a solution myself... the genres for some data simply don't "exist" and I don't know why.
I'm hopeful that 1) there IS a solution, and 2) someone can explain it.

Here's my format:

Code: Select all

Z:\Premiers\SORTED\{if(genres.contains
('Comedy')) {'Comedy'} else if (genres.contains
('Science Fiction')) {'Sci Fi'} else if (genres.contains
.
.
.
('Sport')) {'Sports'} else if (genres.contains
('Sports')) {'Sports'} else

'_GENRE'}\{any{((int)y/10)+'0s'} {any{((int)airdate.year/10)+'0s'}{airdate.year}} {'_YEAR'}}\{n.upperInitial() .lowerTrail()
.replaceFirst(/^(?i)(The|A|An)\s(.+)/, /$2, $1/) .replaceAll(/[`´‘’“”""]/, "'") .replaceAll(/[:]/, "- ") .replaceAll(/[;]/, ", ") 
}


({any{y} {any{airdate.year}{airdate.year}} {'YEAR'}}, {any{info.network} {'NETWORK'}})


{s00e00} -
{t.upperInitial() .lowerTrail()
.replaceFirst(/^(?i)(The|A|An)\s(.+)/, /$2, $1/) .replaceAll(/[`´‘’“”""]/, "'") .replaceAll(/[:]/, "- ") .replaceAll(/[;]/, ", ") 
({any{airdate}{any{y}{'AIRDATE'}}}) {genres.take(3) ?: '[GENRE]'}


[{csv('Z:/TV Networks List.csv').get(info.network) ?: info.network }]
I (think I have) tried every technique - certainly I've searched the site/forums inside & out - but there are still several hundred shows that escape me.

EXAMPLES:
$#! My Dad Says (2010, NETWORK) S01E01 - Pilot (2010-09-23) []
is a comedy, on both TheTVDB & TVRage; yet it comes back with no genres.
While it has a YEAR, there is no genre. It also fails to return the network.
So the result is
Z:/Premiers/SORTED/2010s/$#! My Dad Says (2010, NETWORK) S01E01 - Pilot (2010-09-23) []
when it should be
Z:/Premiers/SORTED/Comedy/2010s/$#! My Dad Says (2010, CBS) S01E01 - Pilot (2010-09-23) [Comedy]
In fact, this looks like it has everything one needs; so why is some coming back blank?
http://www.tvrage.com/Shit_My_Dad_Says

America's Hardest Bounty Hunters (YEAR, NETWORK) S01E01 - Season 1, Episode 1 (AIRDATE) []
On TVRage, there is some data, but nothing comes back. There is a year (but no airdate) and genres listed.
In this case, the format finds no year, and (correctly for a missing year) replaces the missing year with _YEAR, but does not give me a _GENRE to replace the (missing?) genre.
It comes back as
Z:/Premiers/SORTED/_YEAR/America's Hardest Bounty Hunters (YEAR, NETWORK) S01E01 - Season 1, Episode 1 (AIRDATE) []
but should be
Z:/Premiers/SORTED/_GENRE/_YEAR/America's Hardest Bounty Hunters (YEAR, NETWORK) S01E01 - Season 1, Episode 1 (AIRDATE) []
http://www.tvrage.com/Americas_Hardest_Bounty_Hunters


I clear the cache (with "filebot -clear-cache") frequently (each time I try a big run of files), so it pulls fresh data.

I've kept up with the current builds, including the December one.
Is there conceivably something wrong with my system? Windows 7 Pro 64.
Anything I can check?
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Need direction on script for custom filename parsing

Post by rednoah »

I'm implementing a few changes with extended metadata lookup from into the format for all {info} related bindings. It will be more sane, but it'll stop working for case that used to sorta work. Basically i'm taking cross-database lookup out.
:idea: Please read the FAQ and How to Request Help.
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Re: Need direction on script for custom filename parsing

Post by DavidRTurner »

rednoah wrote:I'm implementing a few changes with extended metadata lookup from into the format for all {info} related bindings. It will be more sane, but it'll stop working for case that used to sorta work. Basically i'm taking cross-database lookup out.
I'm not sure what you mean by this... but I'm clearly not yet up to speed on some of the intricacies of API calls and Groovy code; I will keep reading... :?

I think my if/then/else logic is good in the code above; but what I am wondering today, is if perhaps the API is not working properly.
I'm not familiar with API programming; I don't know if their data can have errors, or if it's the way FB pulls it, or if it's a glitch in my system or format code... it's <ALMOST> how I'd like it, but I still have several dozen shows which have this kind of result - missing data, when the site shows that data exists.

I can work around it for now, by simply selecting some different code lines for the trouble shows, so they will at least go to the right folders & show the right fields; but it is something I'd like to find out more about.

I don't know if anyone else is having the difficulties I'm having - perhaps someone reading this can try the 2 shows above, and let me know if they get the same lack of results?

Does anyone else find some shows, on either/both dbase sites, fail to return data that appears to exist there?
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Need direction on script for custom filename parsing

Post by rednoah »

Long story short, only if you're using TheTVDB/TheMovieDB you can expect {info} and anything related like {genre} or {certification} to work. If you use other data sources {info} may or may not work.

It will probably not work if the TVRage name doesn't match the TheTVDB name since that would naturally mess with cross-database lookup.

The next version will have better support for non TheTVDB/TheMovieDB data.
:idea: Please read the FAQ and How to Request Help.
DavidRTurner
Power User
Posts: 85
Joined: 01 Feb 2014, 16:59

Re: Need direction on script for custom filename parsing

Post by DavidRTurner »

Sometimes the short works better than the long... that makes sense now, thank you!
And keep up the good work!!
Post Reply