Skip to content

Commit

Permalink
feat: shit filter and adult content check
Browse files Browse the repository at this point in the history
  • Loading branch information
g0ldyy committed Nov 18, 2024
1 parent 0487af5 commit fe3ddb6
Show file tree
Hide file tree
Showing 4 changed files with 125 additions and 4 deletions.
1 change: 1 addition & 0 deletions .env-sample
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,5 @@ PROXY_DEBRID_STREAM_MAX_CONNECTIONS=-1 # IP-Based connection limit for the Debri
PROXY_DEBRID_STREAM_DEBRID_DEFAULT_SERVICE=realdebrid # if you want your users who use the Debrid Stream Proxy not to have to specify Debrid information, but to use the default one instead
PROXY_DEBRID_STREAM_DEBRID_DEFAULT_APIKEY=CHANGE_ME # if you want your users who use the Debrid Stream Proxy not to have to specify Debrid information, but to use the default one instead
TITLE_MATCH_CHECK=True # disable if you only use Torrentio / MediaFusion and are sure you're only scraping good titles, for example (keep it True if Zilean is enabled)
REMOVE_ADULT_CONTENT=False # detect and remove adult content
CUSTOM_HEADER_HTML=None # only set it if you know what it is
6 changes: 4 additions & 2 deletions comet/api/stream.py
Original file line number Diff line number Diff line change
Expand Up @@ -410,11 +410,13 @@ async def stream(request: Request, b64config: str, type: str, id: str):
try:
ranked_file = rtn.rank(
files[hash]["title"],
hash, # , correct_title=name, remove_trash=True
hash,
remove_trash=True, # , correct_title=name, remove_trash=True
)

ranked_files.add(ranked_file)
except:
except Exception as e:
logger.info(f"Filtered: {e}")
pass

sorted_ranked_files = sort_torrents(ranked_files)
Expand Down
1 change: 1 addition & 0 deletions comet/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,7 @@ def start_log():
f"Debrid Stream Proxy: {bool(settings.PROXY_DEBRID_STREAM)} - Password: {settings.PROXY_DEBRID_STREAM_PASSWORD} - Max Connections: {settings.PROXY_DEBRID_STREAM_MAX_CONNECTIONS} - Default Debrid Service: {settings.PROXY_DEBRID_STREAM_DEBRID_DEFAULT_SERVICE} - Default Debrid API Key: {settings.PROXY_DEBRID_STREAM_DEBRID_DEFAULT_APIKEY}",
)
logger.log("COMET", f"Title Match Check: {bool(settings.TITLE_MATCH_CHECK)}")
logger.log("COMET", f"Remove Adult Content: {bool(settings.REMOVE_ADULT_CONTENT)}")
logger.log("COMET", f"Custom Header HTML: {bool(settings.CUSTOM_HEADER_HTML)}")


Expand Down
121 changes: 119 additions & 2 deletions comet/utils/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ class AppSettings(BaseSettings):
PROXY_DEBRID_STREAM_DEBRID_DEFAULT_SERVICE: Optional[str] = "realdebrid"
PROXY_DEBRID_STREAM_DEBRID_DEFAULT_APIKEY: Optional[str] = None
TITLE_MATCH_CHECK: Optional[bool] = True
REMOVE_ADULT_CONTENT: Optional[bool] = False

@field_validator("DASHBOARD_ADMIN_PASSWORD")
def set_dashboard_admin_password(cls, v, values):
Expand Down Expand Up @@ -113,7 +114,7 @@ def check_max_results_per_resolution(cls, v):
def check_max_size(cls, v):
if not isinstance(v, int):
v = 0

if v < 0:
v = 0
return v
Expand All @@ -125,7 +126,123 @@ def check_debrid_service(cls, v):
return v


rtn_settings = SettingsModel()
default_settings = {
"profile": "default",
"require": [],
"exclude": [],
"preferred": [],
"resolutions": {
"r2160p": True,
"r1080p": True,
"r720p": True,
"r480p": True,
"r360p": True,
"unknown": True,
},
"options": {
"title_similarity": 0.85,
"remove_all_trash": True,
"remove_ranks_under": -1000000000000000,
"remove_unknown_languages": False,
"allow_english_in_languages": True,
"enable_fetch_speed_mode": True,
"remove_adult_content": settings.REMOVE_ADULT_CONTENT,
},
"languages": {
"required": [],
"exclude": [
# "ar",
# "hi",
# "fr",
# "es",
# "de",
# "ru",
# "pt",
# "it"
],
"preferred": [],
},
"custom_ranks": {
"quality": {
"av1": {"fetch": True, "use_custom_rank": False, "rank": 0},
"avc": {"fetch": True, "use_custom_rank": False, "rank": 0},
"bluray": {"fetch": True, "use_custom_rank": False, "rank": 0},
"dvd": {"fetch": True, "use_custom_rank": False, "rank": 0},
"hdtv": {"fetch": True, "use_custom_rank": False, "rank": 0},
"hevc": {"fetch": True, "use_custom_rank": False, "rank": 0},
"mpeg": {"fetch": True, "use_custom_rank": False, "rank": 0},
"remux": {"fetch": True, "use_custom_rank": False, "rank": 0},
"vhs": {"fetch": True, "use_custom_rank": False, "rank": 0},
"web": {"fetch": True, "use_custom_rank": False, "rank": 0},
"webdl": {"fetch": True, "use_custom_rank": False, "rank": 0},
"webmux": {"fetch": True, "use_custom_rank": False, "rank": 0},
"xvid": {"fetch": True, "use_custom_rank": False, "rank": 0},
},
"rips": {
"bdrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"brrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"dvdrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"hdrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"ppvrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"satrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"tvrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"uhdrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"vhsrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"webdlrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
"webrip": {"fetch": True, "use_custom_rank": False, "rank": 0},
},
"hdr": {
"bit10": {"fetch": True, "use_custom_rank": False, "rank": 0},
"dolby_vision": {"fetch": True, "use_custom_rank": False, "rank": 0},
"hdr": {"fetch": True, "use_custom_rank": False, "rank": 0},
"hdr10plus": {"fetch": True, "use_custom_rank": False, "rank": 0},
"sdr": {"fetch": True, "use_custom_rank": False, "rank": 0},
},
"audio": {
"aac": {"fetch": True, "use_custom_rank": False, "rank": 0},
"ac3": {"fetch": True, "use_custom_rank": False, "rank": 0},
"atmos": {"fetch": True, "use_custom_rank": False, "rank": 0},
"dolby_digital": {"fetch": True, "use_custom_rank": False, "rank": 0},
"dolby_digital_plus": {"fetch": True, "use_custom_rank": False, "rank": 0},
"dts_lossy": {"fetch": True, "use_custom_rank": False, "rank": 0},
"dts_lossless": {"fetch": True, "use_custom_rank": False, "rank": 0},
"eac3": {"fetch": True, "use_custom_rank": False, "rank": 0},
"flac": {"fetch": True, "use_custom_rank": False, "rank": 0},
"mono": {"fetch": True, "use_custom_rank": False, "rank": 0},
"mp3": {"fetch": True, "use_custom_rank": False, "rank": 0},
"stereo": {"fetch": True, "use_custom_rank": False, "rank": 0},
"surround": {"fetch": True, "use_custom_rank": False, "rank": 0},
"Truehd": {"fetch": True, "use_custom_rank": False, "rank": 0},
},
"extras": {
"three_d": {"fetch": True, "use_custom_rank": False, "rank": 0},
"converted": {"fetch": True, "use_custom_rank": False, "rank": 0},
"documentary": {"fetch": True, "use_custom_rank": False, "rank": 0},
"dubbed": {"fetch": True, "use_custom_rank": False, "rank": 0},
"edition": {"fetch": True, "use_custom_rank": False, "rank": 0},
"hardcoded": {"fetch": True, "use_custom_rank": False, "rank": 0},
"network": {"fetch": True, "use_custom_rank": False, "rank": 0},
"proper": {"fetch": True, "use_custom_rank": False, "rank": 0},
"repack": {"fetch": True, "use_custom_rank": False, "rank": 0},
"retail": {"fetch": True, "use_custom_rank": False, "rank": 0},
"site": {"fetch": True, "use_custom_rank": False, "rank": 0},
"subbed": {"fetch": True, "use_custom_rank": False, "rank": 0},
"upscaled": {"fetch": True, "use_custom_rank": False, "rank": 0},
"scene": {"fetch": True, "use_custom_rank": False, "rank": 0},
},
"trash": {
"cam": {"fetch": False, "use_custom_rank": False, "rank": 0},
"clean_audio": {"fetch": False, "use_custom_rank": False, "rank": 0},
"pdtv": {"fetch": False, "use_custom_rank": False, "rank": 0},
"r5": {"fetch": False, "use_custom_rank": False, "rank": 0},
"screener": {"fetch": False, "use_custom_rank": False, "rank": 0},
"size": {"fetch": False, "use_custom_rank": False, "rank": 0},
"telecine": {"fetch": False, "use_custom_rank": False, "rank": 0},
"telesync": {"fetch": False, "use_custom_rank": False, "rank": 0},
},
},
}
rtn_settings = SettingsModel(**default_settings)
rtn_ranking = BestRanking()

# For use anywhere
Expand Down

0 comments on commit fe3ddb6

Please sign in to comment.