File size: 3,093 Bytes
c37663e
e566133
c37663e
e566133
c37663e
e566133
 
 
 
87159d4
 
 
 
f38cb66
87159d4
 
 
 
 
 
bb25507
 
d2db4be
44dd42b
87159d4
06de700
dd524d1
87159d4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bb25507
 
87159d4
f38cb66
87159d4
f38cb66
87159d4
 
 
 
e566133
87159d4
e566133
 
87159d4
e566133
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
87159d4
e566133
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82

import urllib3
from .__init__ import tmdb,search,movie,tv
from FileStream.Tools.cleanup import Get_Title_Year
#from FileStream.TMDB.__init__ import tmdb,search,movie,tv


def get_tvshows(tv_show_id):
    return tv.details(tv_show_id).__dict__

def search_tmdb_movies(name):
    # Search for the title in TMDb
    title, year = Get_Title_Year(name)
    print("*", title, year,"\n Name :", name )
    if title is None :
        return None
    search_results = search.multi(title)
    # Filter results by year
    try:
        for result in search_results:
            if not isinstance(result, dict):
                result = dict(result)
            if result.get("media_type")  == "movie":
                release_date= result.get("release_date") or result.get("first_air_date") 
                if release_date and int(release_date.split('-')[0]) == year:
                    #print("\n * TMDB response" ,result, type(result))
                    return dict(result)
    except Exception as e :
        print("* Error at Endpoint", e, result)
        return None
    return None

def search_tmdb_tv(name):
    # Search for the title in TMDb
    title, year = Get_Title_Year(name)
    #print("*", title, year,"\n Name :", name)
    if title is None :
        return None
    search_results = search.multi(title)
    # Filter results by year
    try:
        for result in search_results:
            if not isinstance(result, dict):
                result = dict(result)
            if result.media_type  == "tv":
                release_date= result.get("release_date") or result.get("first_air_date") 
                if release_date and int(release_date.split('-')[0]) == year:
                    return get_tvshows( result.get("id") ) 
    except Exception as e :
        print("* Error at Endpoint", e, result)
        return None
    return None    
    
def search_tmdb_any(name):
    # Search for the title in TMDb
    title, year = Get_Title_Year(name)
    #print("*", title, year,"\n Name :", name)
    if title is None :
        return None
    search_results = search.multi(title)
    # Filter results by year
    try:
        for result in search_results:
            #if not isinstance(result, dict):
                #print(result)
                #result = result
            #release_date = result.release_date if result.release_date else result.first_air_date
            if result.media_type  == "tv":
                release_date=result.release_date or result.first_air_date or result.get("release_date") or result.get("first_air_date") 
                if release_date and int(release_date.split('-')[0]) == year:
                    return get_tvshows( result.id or result.get("id") ) 

            if result.media_type  == "movie":
                release_date=result.release_date or result.get("release_date") or result.get("first_air_date") 
                if release_date and int(release_date.split('-')[0]) == year:
                    return result

    except Exception as e :
        print("* Error at Endpoint", e, result)
        return None

    return None