@@ -310,12 +310,18 @@ def dict_check(dict_attr, attr):
310
310
self .popularity = self ._parse (attrs = dict_check ("person" , "popularity" ), value_type = "int" )
311
311
self .profile_path = self ._parse (attrs = dict_check ("person" , "profile_path" ))
312
312
self .profile_url = self ._image_url (self .profile_path )
313
- if self .media_type == "movie" :
314
- self .movie = self ._parse (attrs = "media" , value_type = "movie" )
315
- elif self .media_type == "tv" :
316
- self .tv_show = self ._parse (attrs = "media" , value_type = "tv" )
317
- self .seasons = self ._parse (attrs = ["media" , "seasons" ], value_type = "season" , is_list = True )
318
- self .episodes = self ._parse (attrs = ["media" , "episodes" ], value_type = "episode" , is_list = True )
313
+ if "media" in self ._data :
314
+ if self .media_type == "movie" :
315
+ self .movie = self ._parse (attrs = "media" , value_type = "movie" )
316
+ elif self .media_type == "tv" :
317
+ self .tv_show = self ._parse (attrs = "media" , value_type = "tv" )
318
+ self .seasons = self ._parse (attrs = ["media" , "seasons" ], value_type = "season" , is_list = True )
319
+ self .episodes = self ._parse (attrs = ["media" , "episodes" ], value_type = "episode" , is_list = True )
320
+ elif "credit_id" in self ._data :
321
+ if self .media_type == "movie" :
322
+ self .movie = self ._tmdb .movie (self ._parse (attrs = "id" , value_type = "int" ), load = False )
323
+ elif self .media_type == "tv" :
324
+ self .tv_show = self ._tmdb .tv_show (self ._parse (attrs = "id" , value_type = "int" ), load = False )
319
325
320
326
def _full_load (self ):
321
327
return self ._api .credits_get_details (self .id )
0 commit comments