po5 / player-tracker

A tool that automatically updates various TV trackers while you're watching stuff.
GNU General Public License v3.0
15 stars 2 forks source link

Issues when detecting movies #5

Open CypherNL opened 5 years ago

CypherNL commented 5 years ago

OS: Windows 10 1607 LTSB player-tracker version: 6492ba87b1b764506e41bba2a3cb3887ec72fb7f

After testing some movies to update to the services, i've found that some of the movies does not want to be detected as movies. Some also give a Traceback errors at the AniList MyAnimeList updater. One of them doesn't want to even update to Trakt.

Moving the movies under the folder Movies did not solve the issue.

For example: Puella Magi Madoka Magica the Movie Part I: Beginnings Filename: Puella Magi Madoka Magica the Movie Part I Beginnings (2012) [1920x1080_x264][***].mkv

Searching on anilist...
Already in list Puella Magi Madoka Magica - Season 1 Episode 1
Searching on myanimelist...
Already in list Mahou Shoujo Madoka★Magica - Season 1 Episode 1
Searching on trakt...
Our best match is Puella Magi Madoka Magica - Season 1 Episode 1

2nd try:

Searching on anilist...
Already in list Puella Magi Madoka Magica
Searching on myanimelist...
Our best match is Mahou Shoujo Madoka★Magica Movie 1: Hajimari no Monogatari
Rate limited on MyAnimeList, waiting 20s...
Rate limited on MyAnimeList, waiting 20s...
Searching on trakt...
Already in list Puella Magi Madoka Magica

Kara no Kyoukai Movie 1 Filename: [***] Kara no Kyoukai - 1 - Overlooking View [BDRip 1080p x264 FLAC],mkv

Searching on anilist...
Our best match is Kara no Kyoukai: Mujun Rasen
Searching on myanimelist...
Our best match is Kara no Kyoukai: Mirai Fukuin
Traceback (most recent call last):
  File ".\player-tracker.py", line 156, in <module>
    search_and_match(**info)
  File ".\player-tracker.py", line 129, in search_and_match
    if update(module, match, format) is False:
  File ".\player-tracker.py", line 136, in update
    module.update(match["id"], match["season"], match["episode"], match["completed"], format)
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\myanimelist.py", line 62, in update
    api = session.post(url, data=post).json()
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\site-packages\requests\models.py", line 897, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

2nd try (Took quite a long time to respond at the AniList updater)

Searching on anilist...
Traceback (most recent call last):
  File ".\player-tracker.py", line 156, in <module>
    search_and_match(**info)
  File ".\player-tracker.py", line 87, in search_and_match
    search = module.search(title)
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\anilist.py", line 96, in search
    """}).json()
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\site-packages\requests\models.py", line 897, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Try 4 (3 is the same as 1):

Searching on anilist...
Already in list Kara no Kyoukai: Mujun Rasen
Searching on myanimelist...
Our best match is Kara no Kyoukai: Mirai Fukuin
Rate limited on MyAnimeList, waiting 20s...
Rate limited on MyAnimeList, waiting 20s...
Traceback (most recent call last):
  File ".\player-tracker.py", line 156, in <module>
    search_and_match(**info)
  File ".\player-tracker.py", line 129, in search_and_match
    if update(module, match, format) is False:
  File ".\player-tracker.py", line 136, in update
    module.update(match["id"], match["season"], match["episode"], match["completed"], format)
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\myanimelist.py", line 50, in update
    return update(id, season, progress, completed, format)
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\myanimelist.py", line 50, in update
    return update(id, season, progress, completed, format)
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\myanimelist.py", line 62, in update
    api = session.post(url, data=post).json()
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\site-packages\requests\models.py", line 897, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Jin-Roh FileName: jin-roh_-_the_wolf_brigade[1828x988.h10p.flac.ac3][***]

Searching on anilist...
Our best match is Jin-Roh
Searching on myanimelist...
Our best match is Jin-Rou
Traceback (most recent call last):
  File ".\player-tracker.py", line 156, in <module>
    search_and_match(**info)
  File ".\player-tracker.py", line 129, in search_and_match
    if update(module, match, format) is False:
  File ".\player-tracker.py", line 136, in update
    module.update(match["id"], match["season"], match["episode"], match["completed"], format)
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\myanimelist.py", line 62, in update
    api = session.post(url, data=post).json()
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\site-packages\requests\models.py", line 897, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

2nd try (moved the video file to a folder called movies)

Searching on anilist...
Our best match is Jin-Roh
Searching on myanimelist...
Our best match is Jin-Rou
Rate limited on MyAnimeList, waiting 20s...
Rate limited on MyAnimeList, waiting 20s...
Rate limited on MyAnimeList, waiting 20s...
Rate limited on MyAnimeList, waiting 20s...
Searching on trakt...
Our best match is Jin-Roh: The Wolf Brigade

The Wings of Honneamise (the Trakt updater didn't updated it to the service) Filename: The_Wings_ofHonneamise[BD.1080p_DTSAC3][***]

Searching on anilist...
Already in list Magi: The Kingdom of Magic - Season 1 Episode 1
Searching on myanimelist...
Our best match is Seupideuwang Beongae - Season 1 Episode 1
Searching on trakt...
Our best match is Royal Space Force - The Wings Of Honneamise - Season 1 Episode 1

Try 2 and 3 is the same as the first try. On the second try i get the same Traceback error as at Jin-Roh and Kara no Kyoukai. The movie did not once again update to Trakt on the third time.

So far these movies can be updated to all the three services with no detection issues (the Traceback error might be a problem sometimes): Jin-Roh Mobile Suit Gundam I

This could be guessit thing when detecting movies as moving these video files to the Movies folder fixed this issue for me on other programs. That fix does not apply here since it only detects the filename i think. But the Traceback error can be looked at.

CypherNL commented 5 years ago

The Traceback issue also applies to TV series as i got one when trying the new queuing text output feature.

PS E:\Downloads\player-tracker-master\player-tracker-master> python.exe .\player-tracker.py
Updating AniList...
Updating MyAnimeList...
Updating Trakt.tv...
Waiting 30s...
Waiting 30s...
Queuing Space.Dandy.S01E01.1080p-Hi10p.BluRay.FLAC5.1.x264-CTR.[C35AE265].mkv for list update
Waiting 30s...
Waiting 30s...
Waiting 30s...
Waiting 30s...
Searching on anilist...
Our best match is Space Dandy - Season 1 Episode 1
Searching on myanimelist...
Our best match is Space☆Dandy - Season 1 Episode 1
Rate limited on MyAnimeList, waiting 20s...
Traceback (most recent call last):
  File ".\player-tracker.py", line 157, in <module>
    search_and_match(**info)
  File ".\player-tracker.py", line 129, in search_and_match
    if update(module, match, format) is False:
  File ".\player-tracker.py", line 136, in update
    module.update(match["id"], match["season"], match["episode"], match["completed"], format)
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\myanimelist.py", line 50, in update
    return update(id, season, progress, completed, format)
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\myanimelist.py", line 62, in update
    api = session.post(url, data=post).json()
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\site-packages\requests\models.py", line 897, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\Melvin\scoop\apps\python36\current\lib\json\decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
po5 commented 5 years ago

These crashes happens when the API returns unexpected data. I can only assume it is rate limiting and not something movie related. I will look into it.

Regarding the Madoka logs, entries already in your list are prioritized. I guess I can ignore them if they're marked as completed.

CypherNL commented 5 years ago

Got a new error when updating to version 6b30308aa73004bbdf0467d90123319f656350b5 and testing Kara no Kyoukai movie 1 again. It misses the release type on the MAL updater. Also it updates a different movie (Movie 5 instead of 1 in AniList) than movie 1 of the Kara no Kyoukai movies.

Updating AniList...
Updating MyAnimeList...
Updating Trakt.tv...
Waiting 30s...
Waiting 30s...
Waiting 30s...
Queuing [***] Kara no Kyoukai - 1 - Overlooking View [BDRip 1080p x264 FLAC].mkv for list update
Waiting 30s...
Waiting 30s...
Waiting 30s...
Waiting 30s...
Waiting 30s...
Waiting 30s...
Searching on anilist...
Our best match is Kara no Kyoukai: Mujun Rasen
Searching on myanimelist...
Our best match is Kara no Kyoukai: Mirai Fukuin
Rate limited on MyAnimeList, waiting 20s...
Traceback (most recent call last):
  File ".\player-tracker.py", line 177, in <module>
    search_and_match(**info)
  File ".\player-tracker.py", line 149, in search_and_match
    if update(module, match, format) is False:
  File ".\player-tracker.py", line 156, in update
    module.update(match["id"], match["season"], match["episode"], match["completed"], format, match["type"])
  File "E:\Downloads\player-tracker-master\player-tracker-master\services\myanimelist.py", line 50, in update
    return update(id, season, progress, completed, format)
TypeError: update() missing 1 required positional argument: 'media_type'