imaginary-upside / JellyfinJav

JAV metadata providers for Jellyfin
GNU Affero General Public License v3.0
82 stars 22 forks source link

Failing to pull metadata (logs included) #8

Closed zeldatp151 closed 3 years ago

zeldatp151 commented 3 years ago

I just installed version 0.4.2 of this on my Jellyfin server (10.6.4) and made a test library to use with it, I configured the library as movies and set R18 and Javlibrary as the metadata sources. but it is failing to actually pull metadata. This is what the logs say is happening.

[2020-10-29 17:56:35.907 -04:00] [INF] Starting Library Sync...
[2020-10-29 17:56:35.930 -04:00] [INF] "LIBRARYSYNC" Added 0 items:  ""
[2020-10-29 17:56:36.266 -04:00] [INF] "LIBRARYSYNC" Updated 1 items:  "728a0bdffcef3bb3417091de75fe9118"
[2020-10-29 17:56:36.266 -04:00] [INF] "LIBRARYSYNC" Removed 0 items:  ""
[2020-10-29 17:56:36.266 -04:00] [INF] Finished Library Sync Taking "00:00:00.3583092"
[2020-10-29 17:56:39.960 -04:00] [INF] [JellyfinJav] R18 - Scanning: HEYZO-1854 
[2020-10-29 17:56:42.058 -04:00] [INF] [JellyfinJav] Javlibrary - Scanning: HEYZO-1854 
[2020-10-29 17:56:42.616 -04:00] [ERR] Error in "Javlibrary"
System.NullReferenceException: Object reference not set to an instance of an object.
   at JellyfinJav.Api.JavlibraryClient.ParseVideoPage(IDocument doc)
   at JellyfinJav.Api.JavlibraryClient.LoadVideo(Uri url)
   at JellyfinJav.Api.JavlibraryClient.LoadVideo(String id)
   at JellyfinJav.Providers.JavlibraryProvider.JavlibraryProvider.GetMetadata(MovieInfo info, CancellationToken cancelToken)
   at MediaBrowser.Providers.Manager.MetadataService\`2.ExecuteRemoteProviders(MetadataResult`1 temp, String logName, TIdType id, IEnumerable`1 providers, CancellationToken cancellationToken)
[2020-10-29 17:56:42.757 -04:00] [INF] TmdbSearch: Finding id for item: "HEYZO 1854" (2018)
[2020-10-29 17:56:43.594 -04:00] [ERR] "JavlibraryImageProvider" failed in GetImageInfos for type "Movie"
System.NullReferenceException: Object reference not set to an instance of an object.
   at JellyfinJav.Api.JavlibraryClient.ParseVideoPage(IDocument doc)
   at JellyfinJav.Api.JavlibraryClient.LoadVideo(Uri url)
   at JellyfinJav.Api.JavlibraryClient.LoadVideo(String id)
   at JellyfinJav.Providers.JavlibraryProvider.JavlibraryImageProvider.GetImages(BaseItem item, CancellationToken cancelToken)
   at MediaBrowser.Providers.Manager.ProviderManager.GetImages(BaseItem item, CancellationToken cancellationToken, IRemoteImageProvider provider, List`1 preferredLanguages, Nullable`1 type)
[2020-10-29 17:56:49.632 -04:00] [INF] Starting Library Sync...
[2020-10-29 17:56:49.634 -04:00] [INF] "LIBRARYSYNC" Added 0 items:  ""
[2020-10-29 17:56:49.888 -04:00] [INF] "LIBRARYSYNC" Updated 1 items:  "728a0bdffcef3bb3417091de75fe9118"
[2020-10-29 17:56:49.888 -04:00] [INF] "LIBRARYSYNC" Removed 0 items:  ""
[2020-10-29 17:56:49.888 -04:00] [INF] Finished Library Sync Taking "00:00:00.2550617"
[2020-10-29 17:59:10.110 -04:00] [INF] WS "::ffff:127.0.0.1" closed
[2020-10-29 17:59:14.036 -04:00] [INF] WS "::ffff:127.0.0.1" request
[2020-10-29 17:59:25.698 -04:00] [ERR] "JavlibraryImageProvider" failed in GetImageInfos for type "Movie"
System.NullReferenceException: Object reference not set to an instance of an object.
   at JellyfinJav.Api.JavlibraryClient.ParseVideoPage(IDocument doc)
   at JellyfinJav.Api.JavlibraryClient.LoadVideo(Uri url)
   at JellyfinJav.Api.JavlibraryClient.LoadVideo(String id)
   at JellyfinJav.Providers.JavlibraryProvider.JavlibraryImageProvider.GetImages(BaseItem item, CancellationToken cancelToken)
   at MediaBrowser.Providers.Manager.ProviderManager.GetImages(BaseItem item, CancellationToken cancellationToken, IRemoteImageProvider provider, List`1 preferredLanguages, Nullable`1 type)
imaginary-upside commented 3 years ago

HEYZO-1854 isn't actually on Javlibrary or R18. It seems like both sites don't really track uncensored videos.

The only other website I know of which does track uncensored videos is JavBus, but that site seems to be very Chinese focused, and is missing a decent amount of metadata. Like for example, https://www.javbus.com/en/HEYZO-1854 doesn't really list much.

So basically I don't know which database site I'd use to properly grab metadata for uncensored videos. Do you have any suggestion?

zeldatp151 commented 3 years ago

I didn't even realize that I had chosen an uncensored video to test this plugin with XD sorry about that, it is working when I tested it with something actually on JAVLIB.

HEYZO has their own site with info that maybe can be scraped, for example, here is the URL for HEYZO-1854 https://en.heyzo.com/moviepages/1854/index.html. maybe you can scrape this if you want to add HEYZO as a scraper.

Also another site I would recommend adding for an uncensored scraper for would be caribbeancom.com for example 051818-669 is "Debut Vol.47: The Experience Of A 21 Years Old Girl" at https://en.caribbeancom.com/eng/moviepages/051818-669/index.html

imaginary-upside commented 3 years ago

No worries.

The one problem for me is that I don't really watch uncensored jav, and I'd need to make a scraper for, like you've shown, each studio's website. So I personally probably won't get around to that, but if you or anyone else would like to code up scrapers in the same general style of the existing codebase, I'd happily accept it.