-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
79 lines (65 loc) · 2.15 KB
/
main.py
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
import logging
import os
from applications import overseerr
import pprint
import time
import schedule
from applications import plex
from applications import radarr
def get_Media():
movies = radarr.Radarr()
requests = overseerr.Overseerr()
total_Movies = movies.get_Movies()
total_Requests = requests.get_Movies()
for item in total_Requests:
if item['externalServiceId'] in total_Movies:
total_Movies[item['externalServiceId']]['OverseerrID'] = item['id']
return total_Movies
def remove_Media():
movies_parsed = get_Media()
r = radarr.Radarr()
o = overseerr.Overseerr()
p = plex.Plex()
pprint.pprint(movies_parsed)
if len(movies_parsed) >= 1:
for key in movies_parsed.keys():
r.delete_Movie(key)
print(f"Radarr: {movies_parsed[key]['title']}")
o.delete_Movie(movies_parsed[key]['OverseerrID'])
print(f"Overseer: {movies_parsed[key]['title']}")
p.scan_mediaFolder(moviePath=movies_parsed[key]["path"])
print(f"Plex: {movies_parsed[key]['title']}")
else:
print("Nothing to remove, skipping")
if __name__ == "__main__":
log = "info"
numeric_level = getattr(logging, log.upper(), None)
if not isinstance(numeric_level, int):
raise ValueError("Invalid log level: %s" % log)
logging.basicConfig(filename="log.log", encoding="utf-8", level=numeric_level)
env_File = [
"RADARR_URL",
"RADARR_API",
"RADARR_TAG",
"PLEX_API",
"PLEX_URL",
"OVERSEERR_API",
"OVERSEER_URL",
"DAYS_TO_KEEP",
"TRAKT_ID"
]
if os.path.isfile(".env") is False:
logging.info("Env file not found, creating.")
with open(".env", "w") as f:
for line in env_File:
f.write(f"{line}=\n")
f.close()
print(".env file generated")
else:
# remove_Media()
seerr = overseerr.Overseerr()
seerr.add_popular_movies()
# schedule.every().day.at("01:00").do(seerr.add_popular_movies)
# while True:
# schedule.run_pending()
# time.sleep(1)