ZeroQI / Absolute-Series-Scanner

Seasons, absolute mode, Subfolders...
1.01k stars 155 forks source link

Plex - Library Not Populated with One Piece (tvdb4-81797) #495

Closed bigoober closed 4 months ago

bigoober commented 5 months ago

Summary:

Plex Media Server is not adding the anime "One Piece (tvdb4-81797)" to the library when using Hama Agent and Absolute Series Scanner. The library remains empty despite having 988 files in the designated folder (F:\MEDIA\One Pieceu\One Piece [tvdb4-81797]), I am not using season folders.

Expected Result: The library should recognize "One Piece" anime and split it into seasons (tvdb 4 mapping arcs)

Actual Result:

The library remains empty.

Additional Information: The folder contains 988 One Piece episodes Some episode numbers exceed 1000. Absolute Series Scanner has successfully added One Piece anime for me in the past. This issue occurs even with other methods, like TVDB3.

logs: Plex Media Scanner.log

Hope I could get some help thanks

ZeroQI commented 5 months ago

May 29, 2024 00:24:54.395 [4160] ERROR - Error in Python: Running scanner: Traceback (most recent call last): File "C:\Users\yonif\AppData\Local\Plex Media Server\Scanners\Series\Absolute Series Scanner.py", line 1144, in Scan season, ep = int(match.group('year')), '{}-{}-{}'.format(match.group('year'), match.group('month'), match.group('day')) TypeError: int() argument must be a string or a number, not 'NoneType'

Forced id must be in square brackets anime "One Piece [tvdb4-81797]" You will need to change folder content or the scan will detect nothing changed in the folder and reuse the empty cache with nothing added due to rhe crash

bigoober commented 5 months ago

May 29, 2024 00:24:54.395 [4160] ERROR - Error in Python: Running scanner: Traceback (most recent call last): File "C:\Users\yonif\AppData\Local\Plex Media Server\Scanners\Series\Absolute Series Scanner.py", line 1144, in Scan season, ep = int(match.group('year')), '{}-{}-{}'.format(match.group('year'), match.group('month'), match.group('day')) TypeError: int() argument must be a string or a number, not 'NoneType'

Forced id must be in square brackets anime "One Piece [tvdb4-81797]" You will need to change folder content or the scan will detect nothing changed in the folder and reuse the empty cache with nothing added due to rhe crash

There seems to be a misunderstanding about the folder name. It's actually "F:\MEDIA\One Pieceu\One Piece [tvdb4-81797]". As you can see, I am using square brackets in the folder name (you can see it in the logs as well)

Plex not identified the show even without the tvdb ID. I even tried renaming the folder to just "One Piece" and the show did not show up on Plex.

The issue seems to be with episodes exceeding 999. I did additional troubleshooting, I removed all episodes beyond episode 999, and then Plex successfully detected the show and the remaining episodes. However, once I added the higher-numbered episodes back, Plex did not recognize them.

This suggests there might be an issue with handling episode numbers above 999.

ZeroQI commented 5 months ago

I need logs and since it crashes we aren't gonna have logs... What is your library root folder? Can you give filame examples?

It is mismatching filenames as having dates here: https://github.com/ZeroQI/Absolute-Series-Scanner/blob/master/Scanners/Series/Absolute%20Series%20Scanner.py#L1144

bigoober commented 5 months ago

about the examples, I think this screenshot would be great because it shows that the file names format is the same but only the 1000+ ones are not showing up.

image

and by root folder you mean the C:\Users****\AppData\Local\Plex Media Server\ ?

ZeroQI commented 5 months ago

Your plex series library, what is the folder selected to create it, namely the library root folder

bigoober commented 5 months ago

One Piece [tvdb4-81797] is inside "One Pieceu" folder which is the library folder. image

bigoober commented 5 months ago

some update: episode 1000 was added, but not 1001,1002,1003, and so on.

Roshri commented 5 months ago

Hi, I had a similar issue using tvdb-3 with series exceeding 999, my solution was to modify filenames adding an E before episode number like this [SubsPlease] One Piece - E1105 (1080p) [E9F323DA] maybe this could help?

bigoober commented 5 months ago

Hi, I had a similar issue using tvdb-3 with series exceeding 999, my solution was to modify filenames adding an E before episode number like this [SubsPlease] One Piece - E1105 (1080p) [E9F323DA] maybe this could help?

Hi, Not working image

Roshri commented 5 months ago

Sorry I wasn't able to help

ZeroQI commented 5 months ago

Line 118 DATE_RX = 1-9[ -.\/]?(?P(0[1-9]|1[0-2]))\2?(?P(0[1-9]|[12][0-9]|3[01]))'), #2024-05-21, 2024/25/31, 2024.05.31, 2024 05 31

Line 1044 season, ep = int(match.group('year')), '{}-{}-{}'.format(match.group('year'), match.group('month'), match.group('day'))

match.group('year') is None so int(None) fails... The key seem to be regex with numbers, seen as date, and year broken and it has day regex for year so broken... Let's remove space as date separator and fix regex line 118, 1900-2039 should suffice, please test thix fix:

DATE_RX = 0-9[-.\/]?(?P(0[1-9]|1[0-2]))\2?(?P(0[1-9]|[12][0-9]|3[01]))'), #2024-05-21, 2024/25/31, 2024.05.31, 2024 05 31 Following line reverse order same bug Please try the fix but the folder content need to change not to use cached result from crash with 0 files

https://github.com/ZeroQI/Absolute-Series-Scanner/commit/fc727f92262ab742886a80d58fb78b975542995f

ZeroQI commented 5 months ago

Please try the fix i pushed and report Did it on the phone so couldn't document well

bigoober commented 5 months ago

Please try the fix i pushed and report Did it on the phone so couldn't document well

First, thank you for your help.

I updated (manually) the .py file with your changes but the issue persists. Plex Media Scanner.log

I also created a new One Piece folder in another library to make sure.

acomick commented 5 months ago

I can confirm that this is also happening to me. One Piece was working fine, updated the scanner earlier this week and new episodes are not being picked up. Including my logs. Root scanner log also has this at the bottom, not sure if it's related. Note all other series s seem to be updating as expected. One Piece.scanner.log One Piece.filelist.log Plex Media Scanner.log


=============================================================================================================================================================`
Plex scan start: 2024-06-09 19:21:26,203000
Error reading url '<urllib2.Request instance at 0x047d1da0>', Exception: 'HTTP Error 401: Unauthorized'
Exception: 'HTTP Error 401: Unauthorized', library_xml could not be loaded. X-Plex-Token file created?
=============================================================================================================================================================
Call: "Plex", dirs( 1), files(1129), path: "One Piece"
ZeroQI commented 5 months ago

One Piece\One Piece- Clockwork Island Adventure [704x396 - DVD(XviD MP3)][K-F][2001][81032270].avi

Episode number in square brackets is unsupported

Le lun. 10 juin 2024 à 04:54, acomick @.***> a écrit :

I can confirm that this is also happening to me. One Piece was working fine, updated the scanner earlier this week and new episodes are not being picked up. Including my logs. Root scanner log also has this at the bottom, not sure if it's related. Note all other series s seem to be updating as expected. One Piece.scanner.log https://github.com/user-attachments/files/15755923/One.Piece.scanner.log One Piece.filelist.log https://github.com/user-attachments/files/15755925/One.Piece.filelist.log

`============================================================================================================================================================= Plex scan start: 2024-06-09 19:21:26,203000 Error reading url '<urllib2.Request instance at 0x047d1da0>', Exception: 'HTTP Error 401: Unauthorized' Exception: 'HTTP Error 401: Unauthorized', library_xml could not be loaded. X-Plex-Token file created?

Call: "Plex", dirs( 1), files(1129), path: "One Piece" `

— Reply to this email directly, view it on GitHub https://github.com/ZeroQI/Absolute-Series-Scanner/issues/495#issuecomment-2157097943, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABHMWZPOEOGHONJR2C64VS3ZGUIP7AVCNFSM6AAAAABINX4A32VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJXGA4TOOJUGM . You are receiving this because you commented.Message ID: @.***>

acomick commented 5 months ago

Thanks for the reply. I went ahead and cleaned up the poorly named files and reran a scan, still no luck picking up the latest episode (1108). I see the error in the log, but not sure where it's hitting it. I may try rolling back to an earlier version and seeing if it starts working again. I paid the dumb question tax a while back, thanks for looking into it, will see if I can figure out what's going on with a rollback later. Thanks again.

One Piece.scanner.log Plex Media Scanner.log One Piece.filelist.log

ZeroQI commented 5 months ago

Jun 09, 2024 23:18:36.368 [2536] ERROR - Error in Python: Running scanner: Traceback (most recent call last): File "P:\PlexData\Plex Media Server\Scanners\Series\Absolute Series Scanner.py", line 1144, in Scan season, ep = int(match.group('year')), '{}-{}-{}'.format(match.group('year'), match.group('month'), match.group('day')) TypeError: int() argument must be a string or a number, not 'NoneType'

Looking at scanner logs it crashes on tgat line for a filename, but it can depend on other filename presence If you can go back and find the last scanner version that worked, it will narrow down the code to change greatly

acomick commented 5 months ago

This was keeping me from sleeping so I pulled out my laptop and started testing. When I got to 002f075 it started working again. So 002f075 is the last update that worked for me. I'm afraid thats about the extent of my debugging skills, but hopefully that helps as a starting place.

Plex Media Scanner.log One Piece.scanner.log

ZeroQI commented 5 months ago

So the one after broke it: https://github.com/ZeroQI/Absolute-Series-Scanner/blob/979a851de8836288b7ebd00704ebad84ddc363d9/Scanners/Series/Absolute%20Series%20Scanner.py

Lok to be word search step according to scanner log output compared to non working log Need to look at the code now

karelmikie3 commented 4 months ago

I don't know how much debugging you have already done, but better some double information than none.

I did some simple debugging myself, the regex that is triggered is the second one in DATE_RX.

As it stands now it will match any four-digit number which is a valid day+month combination. (Also eight-digit numbers which are a day+month+year combination) as the separators are optional. So it will break on any episode which starts with 01-31 if you include the leading zero otherwise 10-31) and ends with 1-12.

A simple local fix I did was making the day-month separator non-optional, but as I don't fully know what this regex is meant to do, so it might (will probably) break other stuff.

ZeroQI commented 4 months ago

Your analysis is on point. That would make sense, i changed the regex that was heavily flawed before but now catching too much.

The regex need to keep the same separator across which i coded last time

I have removed dates using day and month only, didn't realise that question mark left at the end Added underscore as separator but removed space

Please test and report

karelmikie3 commented 4 months ago

Will test after I get home, if someone else doesn't get to it first. But from a quick look at the regex with a regex tester it seems to not match anymore.

karelmikie3 commented 4 months ago

Sorry for the late response (I totally didn't forget). I can however report that everything is working as expected again. New episodes are picked up immediately and recognized correctly.