support for XEM?

All your suggestions, requests and ideas for future development
User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 09 Jun 2019, 19:42

FileBot r6486 now supports both AnimeLists and XEM to map between AniDB and TheTVDB.


:idea: AnimeLists mappings are now used implicitly used when using season bindings like {s} {sxe} and {s00e00} on Anime-type Episode objects.
:idea: Please read the FAQ and How to Request Help.

kim
Power User
Posts: 738
Joined: 15 May 2014, 16:17

Re: support for XEM?

Post by kim » 09 Jun 2019, 19:42

but you can't use this code to read e.g. data_0.*

I'm writing a IMDb scraper, here is data from cache file:
index:

Code: Select all

"¬í t Top250Moviessr 7net.sf.ehcache.store.disk.DiskStorageFactory$DiskMarkerþ-U\†å J expiryJ hitCountJ positionI sizeL keyt Ljava/lang/Object;xp  kw æÐ                 ¤¼q ~  "
data:

Code: Select all

¬í sr net.sf.ehcache.Element>é_”  	Z cacheDefaultLifespanJ hitCountJ idJ lastUpdateTimeI 
timeToIdleI 
timeToLiveJ versionL keyt Ljava/lang/Object;L valueq 
so how do i read the expiry, hitCount...

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 09 Jun 2019, 20:28

IDK. I don't seem to need detailed statistics that that. However, the FileBot Cache API is build on top of ehcache 2.10.6 so you could use those APIs directly if you need fine-grained caching.
:idea: Please read the FAQ and How to Request Help.

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 09 Jun 2019, 20:32

e.g. Using --mapper for matching and reverse-mapping via --format and {order} binding:

Code: Select all

filebot -list --db AniDB --q "Monogatari Series: Second Season" --order Absolute --mapper AnimeLists.TheTVDB --format "{episode} || {order.absolute.episode}"

Code: Select all

Monogatari Series Second Season - 3x01 - Tsubasa Tiger, Part 1 || Monogatari Series Second Season - 01 - Tsubasa Tiger, Part 1
Monogatari Series Second Season - 3x02 - Tsubasa Tiger, Part 2 || Monogatari Series Second Season - 02 - Tsubasa Tiger, Part 2
Monogatari Series Second Season - 3x03 - Tsubasa Tiger, Part 3 || Monogatari Series Second Season - 03 - Tsubasa Tiger, Part 3
Monogatari Series Second Season - 3x04 - Tsubasa Tiger, Part 4 || Monogatari Series Second Season - 04 - Tsubasa Tiger, Part 4
Monogatari Series Second Season - 3x05 - Tsubasa Tiger, Part 5 || Monogatari Series Second Season - 05 - Tsubasa Tiger, Part 5
Monogatari Series Second Season - Special 7 - Summary 1 || Monogatari Series Second Season - 06 - Summary 1
Monogatari Series Second Season - 3x06 - Mayoi Jiangshi, Part 1 || Monogatari Series Second Season - 07 - Mayoi Jiangshi, Part 1
Monogatari Series Second Season - 3x07 - Mayoi Jiangshi, Part 2 || Monogatari Series Second Season - 08 - Mayoi Jiangshi, Part 2
Monogatari Series Second Season - 3x08 - Mayoi Jiangshi, Part 3 || Monogatari Series Second Season - 09 - Mayoi Jiangshi, Part 3
Monogatari Series Second Season - 3x09 - Mayoi Jiangshi, Part 4 || Monogatari Series Second Season - 10 - Mayoi Jiangshi, Part 4
Monogatari Series Second Season - Special 8 - Summary 2 || Monogatari Series Second Season - 11 - Summary 2
Monogatari Series Second Season - 3x10 - Nadeko Medusa, Part 1 || Monogatari Series Second Season - 12 - Nadeko Medusa, Part 1
Monogatari Series Second Season - 3x11 - Nadeko Medusa, Part 2 || Monogatari Series Second Season - 13 - Nadeko Medusa, Part 2
Monogatari Series Second Season - 3x12 - Nadeko Medusa, Part 3 || Monogatari Series Second Season - 14 - Nadeko Medusa, Part 3
Monogatari Series Second Season - 3x13 - Nadeko Medusa, Part 4 || Monogatari Series Second Season - 15 - Nadeko Medusa, Part 4
Monogatari Series Second Season - Special 9 - Summary 3 || Monogatari Series Second Season - 16 - Summary 3
Monogatari Series Second Season - 3x14 - Shinobu Time, Part 1 || Monogatari Series Second Season - 17 - Shinobu Time, Part 1
Monogatari Series Second Season - 3x15 - Shinobu Time, Part 2 || Monogatari Series Second Season - 18 - Shinobu Time, Part 2
Monogatari Series Second Season - 3x16 - Shinobu Time, Part 3 || Monogatari Series Second Season - 19 - Shinobu Time, Part 3
Monogatari Series Second Season - 3x17 - Shinobu Time, Part 4 || Monogatari Series Second Season - 20 - Shinobu Time, Part 4
Monogatari Series Second Season - 3x18 - Hitagi End, Part 1 || Monogatari Series Second Season - 21 - Hitagi End, Part 1
Monogatari Series Second Season - 3x19 - Hitagi End, Part 2 || Monogatari Series Second Season - 22 - Hitagi End, Part 2
Monogatari Series Second Season - 3x20 - Hitagi End, Part 3 || Monogatari Series Second Season - 23 - Hitagi End, Part 3
Monogatari Series Second Season - 3x21 - Hitagi End, Part 4 || Monogatari Series Second Season - 24 - Hitagi End, Part 4
Monogatari Series Second Season - 3x22 - Hitagi End, Part 5 || Monogatari Series Second Season - 25 - Hitagi End, Part 5
Monogatari Series Second Season - 3x23 - Hitagi End, Part 6 || Monogatari Series Second Season - 26 - Hitagi End, Part 6
Monogatari Series Second Season - Special 1 - Koyomi History || Monogatari Series Second Season - Special 1 - Koyomi History
:idea: Please read the FAQ and How to Request Help.

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 09 Jun 2019, 21:07

e.g. same thing, but in reverse:

Code: Select all

filebot -list --db TheTVDB --q "Monogatari" --order Airdate --mapper AnimeLists.AniDB --format "{episode} || {seasonize.episode}" --filter "s == 3" --log OFF

Code: Select all

Monogatari Series: Second Season - 01 - Tsubasa Tiger - Part 1 || Monogatari - 3x01 - Tsubasa Tiger - Part 1
Monogatari Series: Second Season - 02 - Tsubasa Tiger - Part 2 || Monogatari - 3x02 - Tsubasa Tiger - Part 2
Monogatari Series: Second Season - 03 - Tsubasa Tiger - Part 3 || Monogatari - 3x03 - Tsubasa Tiger - Part 3
Monogatari Series: Second Season - 04 - Tsubasa Tiger - Part 4 || Monogatari - 3x04 - Tsubasa Tiger - Part 4
Monogatari Series: Second Season - 05 - Tsubasa Tiger - Part 5 || Monogatari - 3x05 - Tsubasa Tiger - Part 5
Monogatari Series: Second Season - 07 - Mayoi Jiangshi - Part 1 || Monogatari - 3x06 - Mayoi Jiangshi - Part 1
Monogatari Series: Second Season - 08 - Mayoi Jiangshi - Part 2 || Monogatari - 3x07 - Mayoi Jiangshi - Part 2
Monogatari Series: Second Season - 09 - Mayoi Jiangshi - Part 3 || Monogatari - 3x08 - Mayoi Jiangshi - Part 3
Monogatari Series: Second Season - 10 - Mayoi Jiangshi - Part 4 || Monogatari - 3x09 - Mayoi Jiangshi - Part 4
Monogatari Series: Second Season - 12 - Nadeko Medusa - Part 1 || Monogatari - 3x10 - Nadeko Medusa - Part 1
Monogatari Series: Second Season - 13 - Nadeko Medusa - Part 2 || Monogatari - 3x11 - Nadeko Medusa - Part 2
Monogatari Series: Second Season - 14 - Nadeko Medusa - Part 3 || Monogatari - 3x12 - Nadeko Medusa - Part 3
Monogatari Series: Second Season - 15 - Nadeko Medusa - Part 4 || Monogatari - 3x13 - Nadeko Medusa - Part 4
Monogatari Series: Second Season - 17 - Shinobu Time - Part 1 || Monogatari - 3x14 - Shinobu Time - Part 1
Monogatari Series: Second Season - 18 - Shinobu Time - Part 2 || Monogatari - 3x15 - Shinobu Time - Part 2
Monogatari Series: Second Season - 19 - Shinobu Time - Part 3 || Monogatari - 3x16 - Shinobu Time - Part 3
Monogatari Series: Second Season - 20 - Shinobu Time - Part 4 || Monogatari - 3x17 - Shinobu Time - Part 4
Monogatari Series: Second Season - 21 - Hitagi End - Part 1 || Monogatari - 3x18 - Hitagi End - Part 1
Monogatari Series: Second Season - 22 - Hitagi End - Part 2 || Monogatari - 3x19 - Hitagi End - Part 2
Monogatari Series: Second Season - 23 - Hitagi End - Part 3 || Monogatari - 3x20 - Hitagi End - Part 3
Monogatari Series: Second Season - 24 - Hitagi End - Part 4 || Monogatari - 3x21 - Hitagi End - Part 4
Monogatari Series: Second Season - 25 - Hitagi End - Part 5 || Monogatari - 3x22 - Hitagi End - Part 5
Monogatari Series: Second Season - 26 - Hitagi End - Part 6 || Monogatari - 3x23 - Hitagi End - Part 6
:idea: Please read the FAQ and How to Request Help.

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 10 Jun 2019, 06:16

:idea: Playing around with it. Does it make sense to keep the mapped value for formatting? Or would it make more sense to use the mapped value only for matching, but always unmap to the original Episode values before formatting?
:idea: Please read the FAQ and How to Request Help.

devster
Posts: 275
Joined: 06 Jun 2017, 22:56

Re: support for XEM?

Post by devster » 10 Jun 2019, 10:11

Sorry, I don't understand to which mapped value you're referring?

However, in your two previous posts I would be surprised by the results.
In the second one I would expect AniDB title to be Owarimonogatari Second Season, not Monogatari, and in the first one I would expect season title to be Monogatari, in both cases I see the flow going from DB to Mapper to Destination with final bindings referring only to the last step.

--db AniDB --mapper Xem.TVDB >> from AniDB information (for matching) to Xem to TheTVDB (final output Monogatari with season/episodes).
--db TheTVDB --mapper Xem.AniDB >> from TheTVDB to Xem to AniDB (final output Owarimonogatari S2 and absolute numbers).

"XEM" binding also seems to already include information about the pre-matching values.
I only work in black and sometimes very, very dark grey. (Batman)

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 10 Jun 2019, 10:39

I've published a new release with better logging and default toString representation of mapped Episode objects.

-list calls will print mapping information and original information by default.

-rename will use the mapping information for matching but then just pass on the original information for use in formatting, i.e. after renaming, numbers will match your chosen database.



:idea: Note that the examples above use AnimeLists and not XEM. Looks good to me according to the mapping information AnimeLists provides.
:idea: Please read the FAQ and How to Request Help.

devster
Posts: 275
Joined: 06 Jun 2017, 22:56

Re: support for XEM?

Post by devster » 10 Jun 2019, 12:54

Sorry about AnimeList vs XEM, I'd expect similar info, also the binding seems to be called XEM in the BETA (not sure if latest).
I wasn't questioning the information, I was simply saying my expectation was different.
I would consider --db as source, --mapper as intermediary.destination, your examples seem to do the opposite, --db is the destination, --mapper is intermediary.source.
I'd expect --db AniDB {episode} to correspond to Owarimonogatari S2 - absolute episode
and --db TheTVDB {episode} to correspond to Monogatary - S00E00 episodes.
That's all. If the decision is to use them as you demonstrate I'll adapt.
I only work in black and sometimes very, very dark grey. (Batman)

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 10 Jun 2019, 14:38

It's all work in progress. I'll post some actual usage examples later and see if they work as one would expect.
:idea: Please read the FAQ and How to Request Help.

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 11 Jun 2019, 07:51

Here's what I get with r6504. Comments appreciated.

Code: Select all

$ filebot --log INFO -list --db TheTVDB --q Monogatari --filter s==3 --mapper XEM.AniDB
Monogatari Series Second Season - 01 [Monogatari - 3x01 - Tsubasa Tiger - Part 1]
Monogatari Series Second Season - 02 [Monogatari - 3x02 - Tsubasa Tiger - Part 2]
...

Code: Select all

$ filebot --log INFO -list --db AniDB --q Monogatari --filter s==3 --mapper XEM.TheTVDB
Monogatari - 3x01 [Monogatari Series Second Season - 01 - Tsubasa Tiger, Part 1]
Monogatari - 3x02 [Monogatari Series Second Season - 02 - Tsubasa Tiger, Part 2]
...
:idea: --db AniDB --filter s==3 only works because FileBot is implicitly using AnimeList when the season value {s} is requested, for Anime Episode objects for which {s} would typically be undefined.

Code: Select all

$ filebot --log INFO --action TEST -rename *.mkv -non-strict --db TheTVDB --mapper XEM.AniDB
...
[TEST] from [Monogatari Series Second Season - 22.mkv] to [Monogatari - 3x22 - Hitagi End - Part 5.mkv]
[TEST] from [Monogatari Series Second Season - 23.mkv] to [Monogatari - 3x23 - Hitagi End - Part 6.mkv]


:!: Note that XEM and AnimeLists seem to have different mappings.


Code: Select all

$ filebot --log INFO -list --db AniDB --q "Monogatari Series Second Season" --mapper AnimeList.TheTVDB
...
Monogatari Series Second Season - 3x05 [Monogatari Series Second Season - 05 - Tsubasa Tiger, Part 5]
Monogatari Series Second Season - Special 7 [Monogatari Series Second Season - 06 - Summary 1]
Monogatari Series Second Season - 3x06 [Monogatari Series Second Season - 07 - Mayoi Jiangshi, Part 1]
Monogatari Series Second Season - 3x07 [Monogatari Series Second Season - 08 - Mayoi Jiangshi, Part 2]
Monogatari Series Second Season - 3x08 [Monogatari Series Second Season - 09 - Mayoi Jiangshi, Part 3]
Monogatari Series Second Season - 3x09 [Monogatari Series Second Season - 10 - Mayoi Jiangshi, Part 4]
Monogatari Series Second Season - Special 8 [Monogatari Series Second Season - 11 - Summary 2]
Monogatari Series Second Season - 3x10 [Monogatari Series Second Season - 12 - Nadeko Medusa, Part 1]
...
Monogatari Series Second Season - 3x18 [Monogatari Series Second Season - 21 - Hitagi End, Part 1]
Monogatari Series Second Season - 3x19 [Monogatari Series Second Season - 22 - Hitagi End, Part 2]
Monogatari Series Second Season - 3x20 [Monogatari Series Second Season - 23 - Hitagi End, Part 3]
...
:idea: Note that that the series name is not mapped to TheTVDB in this example, because AnimeList data only has the AniDB series name, but not the TheTVDB series name, so the name is mapped as is (as to avoid additional TheTVDB network requests to look up the name by ID).

Code: Select all

$ filebot --log INFO --action TEST -rename *.mkv -non-strict --db TheTVDB --mapper AnimeList.AniDB
[TEST] from [Monogatari Series Second Season - 21.mkv] to [Monogatari - 3x18 - Hitagi End - Part 1.mkv]
[TEST] from [Monogatari Series Second Season - 22.mkv] to [Monogatari - 3x19 - Hitagi End - Part 2.mkv]
[TEST] from [Monogatari Series Second Season - 23.mkv] to [Monogatari - 3x20 - Hitagi End - Part 3.mkv]
:idea: Please read the FAQ and How to Request Help.

crawfs
Posts: 20
Joined: 01 Feb 2019, 09:26

Re: support for XEM?

Post by crawfs » 12 Jun 2019, 09:49

Based on your exam]ple AnimeList seems a lot more accurate than TVDB and xem is similarly troublesome from my example.

However I can't get AnimeList working for me on the latest build:

Code: Select all

filebot.exe -version
FileBot 4.8.6 (r6492) / OpenJDK Runtime Environment 12.0.1 / Windows 10 10.0 (amd64)
And when I run:

Code: Select all

filebot.exe --log INFO --action TEST -rename *.mkv -non-strict --db TheTVDB --mapper AnimeList.AniDB
I get the following:

Code: Select all

Exclude [Monogatari Series: Second Season - 1x01 - Tsubasa Tiger - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x02 - Tsubasa Tiger - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x03 - Tsubasa Tiger - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x04 - Tsubasa Tiger - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x05 - Tsubasa Tiger - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x06 - Mayoi Jiangshi - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x07 - Mayoi Jiangshi - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x08 - Mayoi Jiangshi - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x09 - Mayoi Jiangshi - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x10 - Nadeko Medusa - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x11 - Nadeko Medusa - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x12 - Nadeko Medusa - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x13 - Nadeko Medusa - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x14 - Shinobu Time - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x15 - Shinobu Time - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x16 - Shinobu Time - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x17 - Shinobu Time - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x18 - Hitagi End - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x19 - Hitagi End - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x20 - Hitagi End - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x21 - Hitagi End - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x22 - Hitagi End - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari Series: Second Season - 1x23 - Hitagi End - Part 6] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x01 - Hitagi Crab - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x02 - Hitagi Crab - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x03 - Mayoi Snail - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x04 - Mayoi Snail - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x05 - Mayoi Snail - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x06 - Suruga Monkey - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x07 - Suruga Monkey - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x08 - Suruga Monkey - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x09 - Nadeko Snake - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x10 - Nadeko Snake - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x11 - Tsubasa Cat - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x12 - Tsubasa Cat - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x13 - Tsubasa Cat - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x14 - Tsubasa Cat - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 1x15 - Tsubasa Cat - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x01 - Karen Bee - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x02 - Karen Bee - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x03 - Karen Bee - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x04 - Karen Bee - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x05 - Karen Bee - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x06 - Karen Bee - Part 6] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x07 - Karen Bee - Part 7] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x08 - Tsukihi Phoenix - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x09 - Tsukihi Phoenix - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x10 - Tsukihi Phoenix - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 2x11 - Tsukihi Phoenix - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x01 - Tsubasa Tiger - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x02 - Tsubasa Tiger - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x03 - Tsubasa Tiger - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x04 - Tsubasa Tiger - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x05 - Tsubasa Tiger - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x06 - Mayoi Jiangshi - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x07 - Mayoi Jiangshi - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x08 - Mayoi Jiangshi - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x09 - Mayoi Jiangshi - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x10 - Nadeko Medusa - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x11 - Nadeko Medusa - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x12 - Nadeko Medusa - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x13 - Nadeko Medusa - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x14 - Shinobu Time - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x15 - Shinobu Time - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x16 - Shinobu Time - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x17 - Shinobu Time - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x18 - Hitagi End - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x19 - Hitagi End - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x20 - Hitagi End - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x21 - Hitagi End - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x22 - Hitagi End - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 3x23 - Hitagi End - Part 6] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x01 - Ougi Formula - Parts 1 & 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x02 - Sodachi Riddle - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x03 - Sodachi Riddle - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x04 - Sodachi Lost - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x05 - Sodachi Lost - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x06 - Sodachi Lost - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x07 - Shinobu Mail - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x08 - Shinobu Mail - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x09 - Shinobu Mail - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x10 - Shinobu Mail - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x11 - Shinobu Mail - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 4x12 - Shinobu Mail - Part 6] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 5x01 - Mayoi Hell - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 5x02 - Mayoi Hell - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 5x03 - Hitagi Rendezvous - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 5x04 - Hitagi Rendezvous - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 5x05 - Ougi Dark - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 5x06 - Ougi Dark - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - 5x07 - Ougi Dark - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 1 - Episode 5.5 (Recap)] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 2 - Kizumonogatari I: Iron Blood Arc] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 3 - Tsubasa Family - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 4 - Tsubasa Family - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 5 - Tsubasa Family - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 6 - Tsubasa Family - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 7 - Summary I] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 8 - Summary II] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 10 - Suruga Devil - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 9 - Summary III] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 11 - Suruga Devil - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 12 - Suruga Devil - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 13 - Suruga Devil - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 14 - Suruga Devil - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 15 - Yotsugi Doll - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 16 - Yotsugi Doll - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 17 - Yotsugi Doll - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 18 - Yotsugi Doll - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 19 - Kizumonogatari II: Passionate Blood Arc] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 20 - Kizumonogatari III: Cold Blood Arc] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 21 - Koyomi Stone] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 22 - Koyomi Flower] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 23 - Koyomi Sand] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 24 - Koyomi Water] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 25 - Koyomi Wind] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 26 - Koyomi Tree] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 27 - Koyomi Tea] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 28 - Koyomi Mountain] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 29 - Koyomi Torus] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 30 - Koyomi Seed] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 31 - Koyomi Nothing] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 32 - Koyomi Dead] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 33 - Koyomi Reverse - Part 1] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 34 - Koyomi Reverse - Part 2] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 35 - Koyomi Reverse - Part 3] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 36 - Koyomi Reverse - Part 4] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 37 - Koyomi Reverse - Part 5] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1
Exclude [Monogatari - Special 38 - Koyomi Reverse - Part 6] due to map failure: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: AnimeList for class: Script1

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 12 Jun 2019, 10:02

r6504 or higher is required:
viewtopic.php?f=7&t=1609

:arrow: I'm uploading new release builds into the BETA directory as well. Please check back an hour later.
:idea: Please read the FAQ and How to Request Help.

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 13 Jun 2019, 04:46

FileBot r6509 now allows the --mapper to map 1..* episode options, so you can increase the chance that the perfect match is among them, but might also increase ambiguity, depending on the specific circumstances:

Code: Select all

$ filebot --log INFO --action TEST -rename *.mkv -non-strict --db TheTVDB --mapper "[episode, AnimeList.AniDB]"
[TEST] from [Monogatari - 3x19.mkv] to [Monogatari - 3x19 - Hitagi End - Part 2.mkv]
[TEST] from [Monogatari Series Second Season - 23.mkv] to [Monogatari - 3x20 - Hitagi End - Part 3.mkv]
:idea: Please read the FAQ and How to Request Help.

crawfs
Posts: 20
Joined: 01 Feb 2019, 09:26

Re: support for XEM?

Post by crawfs » 13 Jun 2019, 11:00

Not sure I understand what that latest change is doing.

crawfs
Posts: 20
Joined: 01 Feb 2019, 09:26

Re: support for XEM?

Post by crawfs » 13 Jun 2019, 11:57

The mapping has issues with shows that have a separate aniDB entry for each season but the file name itself is in absolute order, this was when I was testing it with amc

Code: Select all

filebot.exe --log INFO --action TEST --output "E:\FilebotTest"  -script fn:amc -non-strict "E:\Downloads" --def animeFormat="{n}\Season {s.pad(2)}\{n} - {s00e00}" --map
per AnimeList.AniDB

Code: Select all

[TEST] from [E:\Downloads\[anime4life.] Kuroko's Basketball 51-75 Complete [Season 3] (BD1080p AC3 8bit) [x264_AVC] English Subbed\Kuroko's Basketball 75 Again and Again (BD1080p AC3 8bit).mkv] to [E:\FilebotTest\TV Shows\Kuroko's Basketball\Season 02\Kuroko's Basketball - S02E24 - Enough.mkv]
 [TEST] from [E:\Downloads\[anime4life.] Kuroko's Basketball 51-75 Complete [Season 3] (BD1080p AC3 8bit) [x264_AVC] English Subbed\Kuroko's Basketball 72 Let Me Warn You (BD1080p AC3 8bit).mkv] to [E:\FilebotTest\TV Shows\Kuroko's Basketball\Season 03\Kuroko's Basketball - S03E03 - Don't You Get in My Way.mkv]
 [TEST] from [E:\Downloads\[DameDesuYo] Shingeki no Kyojin (Season 3 Part 2) - 56v0 (1920x1080 10bit AAC) [00E4BAEE].mkv] to [E:\FilebotTest\TV Shows\Attack on Titan\Specials\Attack on Titan - S00E04 - Chibi Theatre - Fly, Cadets, Fly! ~ Day 3 & 4.mkv]
[TEST] from [E:\Downloads\[DameDesuYo] Shingeki no Kyojin (Season 3 Part 2) - 56v0 (1920x1080 10bit AAC) [564AB91D].mkv] to [E:\FilebotTest\TV Shows\Attack on Titan\Season 03\Attack on Titan - S03E02 - Pain.mkv]
[TEST] from [E:\Downloads\[BlurayDesuYo] Shingeki no Kyojin - Season 2 (BD 1920x1080 10bit FLAC)\[BlurayDesuYo] Shingeki no Kyojin (Season 2) - 35 (BD 1920x1080 10bit FLAC) [47B4753C].mkv] to [E:\FilebotTest\TV Shows\Attack on Titan\Season 02\Attack on Titan - S02E03 - Southwestward.mkv]
I didn't test the above filenames without AMC but figured it was worth mentioning, oh and I provided some links to aniDB pages where shows are split by season:

https://anidb.net/perl-bin/animedb.pl?s ... &aid=10944
https://anidb.net/perl-bin/animedb.pl?s ... &aid=14444

User avatar
rednoah
The Source
Posts: 15958
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: support for XEM?

Post by rednoah » 13 Jun 2019, 13:01

If the files already use TheTVDB Absolute Order, then it'll work out of the box:

Code: Select all

$ filebot --log INFO --action TEST -rename -r *.mkv -non-strict --db TheTVDB --format "{n} - {sxe} [{absolute}]"
[TEST] from [Kuroko's Basketball 72 Let Me Warn You (BD1080p AC3 8bit).mkv] to [Kuroko's Basketball - 3x22 [72].mkv]
[TEST] from [Kuroko's Basketball 75 Again and Again (BD1080p AC3 8bit).mkv] to [Kuroko's Basketball - 3x25 [75].mkv]

BUG: The other way around indeed doesn't work well, as it seems

Code: Select all

filebot -list --q "Kuroko's Basketball" --db AniDB --mapper XEM.TheTVDB -non-strict
DEBUG: I guess I'll need to do some kind of normalization to match between AniDB and TheTVDB series names when using XEM:

Code: Select all

Kuroko's Basketball 3
Kuroko`s Basketball 3

:idea: --db AniDB --mapper AnimeList.TheTVDB works correctly because shows are mapped by numeric ID, but since AnimeList doesn't have absolute number mapping information, we will only have SxE information, and not absolute information, so it's useless in this particular example because we need absolute numbers for matching these files correctly.
:idea: Please read the FAQ and How to Request Help.

Post Reply