-
Notifications
You must be signed in to change notification settings - Fork 4
/
curated.py
104 lines (92 loc) · 7.65 KB
/
curated.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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
from m3u_parser import M3uParser
user_agent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36"
pluto_us_url = "https://i.mjh.nz/PlutoTV/us.m3u8"
pluto_uk_url = "https://i.mjh.nz/PlutoTV/gb.m3u8"
stv_uk_url = "https://i.mjh.nz/SamsungTVPlus/gb.m3u8"
stv_us_url = "https://i.mjh.nz/SamsungTVPlus/us.m3u8"
stirr_url = "https://i.mjh.nz/Stirr/all.m3u8"
roku_url = "https://i.mjh.nz/Roku/all.m3u8"
pluto_gb_channels = ["Pluto TV Movies", "Pluto TV Action", "Pluto TV Sci-Fi", "Pluto TV Comedy Movies",
"Pluto TV Cult Films", "Pluto TV Thrillers", "Pluto TV Horror", "Pluto TV Westerns",
"Pluto TV Family Movie Club", "Pluto TV Sci-fi Series", "More TV Sci-fi", "5 Cops",
"Pluto TV Tough Jobs", "Pluto TV Cops & Convicts", "5 Emergency Rescue", "UKTV Play Heroes",
"Pluto TV Adventure", "Pluto TV Motor", "UKTV Play Full Throttle", "Extreme Channel",
"Come Dine with Me", "Judge Judy", "Hell's Kitchen", "Auction Hunters", "1 vs 100", "Pointless",
"Mythbusters", "Pimp my Ride", "Undercover Boss Global", "Fear Factor",
"Pluto TV Crime", "Pluto TV Investigation", "More TV Crime", "Inside Crime", "Aftershock",
"Pluto TV Reality", "MTV Reality", "NextUp LIVE Comedy Channel",
"UKTV Play Laughs", "Pluto TV Sitcoms", "Pluto TV Classic TV", "Pluto TV Stand Up", "Wipeout",
"Just for Laughs", "Pluto TV Food", "South Park", "Great British Menu", "Bake with Anna Olson",
"Pluto TV Animals", "Pluto TV Space",
"Pluto TV Conspiracy", "Pluto TV Science", "Pluto TV History", "5 Britain at War", "World War TV",
"UKTV Play Uncovered", "Voyager Documentaries", "Get.factual", "World's Greatest",
"5 Exploring Britain", "Pluto TV Big Builds", "Pluto TV Music", "MTV Classic",
"Yo! MTV Raps Classic", "MTV Movie Hits", "MTV Love", "Pluto TV K-Pop", "MTV Rocks",
"Pluto TV Animation"]
pluto_us_channels = ["Pluto TV Spotlight", "Pluto TV Icons", "Pluto TV Reaction", "Pluto TV Drama", "Pluto TV Fantastic",
"Pluto TV Romance", "Pluto TV Staff Picks", "Pluto TV Documentaries",
"70s Cinema", "80s Rewind", "90s Throwback", "00s Replay", "Paramount Movie Channel",
"Classic Movies Channel", "Pluto TV Cult Films", "Flicks of Fury", "Hallmark Movies & More",
"Sitcom Legends", "TV Land Sitcoms", "More TV Sitcoms", "Comedy Central Pluto TV",
"Comedy Central Animation", "Stand-Up TV", "British Comedy",
"Classic TV Comedy", "Classic TV: Families", "Classic TV Drama", "Classic TV Crime Drama",
"Classic TV Variety", "TokuSHOUTsu", "Pluto TV Crime Drama", "More Crime Drama", "TV Land Drama",
"More TV Drama", "Action Drama", "Stories by AMC", "BritBox Mysteries", "British Drama",
"Pluto TV Suspense", "Pluto TV Drama Life", "Court TV", "Crime 360", "Spike Pluto TV",
"Pluto TV Lives", "Xtreme Outdoor Presented by HISTORY", "Real Disaster Channel",
"Top Gear", "Paramount+ Picks", "Showtime Selects", "ION", "K-Content by CJ ENM",
"Live Music Replay", "BUZZR", "Pluto TV Game Shows", "ET",
"More TV Game Shows", "Game Show Central", "CBS Sports HQ", "FOX Sports", "NFL Channel", "MLB",
"Pluto TV Sports", "beIN SPORTS XTRA", "Antiques Roadshow UK",
"BBC Home & Garden", "Food TV", "Warner Bros. TV Sweet Escapes", "The Jamie Oliver Channel",
"Iron Chef", "BBC Food", "Smithsonian Channel Selects", "Pluto TV Travel", "PBS Nature", "IGN",
"Anime All Day", "Vevo '70s", "Vevo '80s", "Vevo '90s", "Vevo 2K", "Vevo 2010s", "Vevo Features",
"XITE Classic Country", "Vevo Country", "Vevo True School Hip-Hop", "Vevo R&B", "Vevo Retro Rock",
"XITE Rock", "Vevo Pop", "MTV Spankin' New", "MTV Biggest Pop", "Vevo Latino", "Vevo Reggaeton & Trap"]
samsung_uk_channels = ["Entertainment Hub", "Comedy Hub", "Comedy Movies - Rakuten TV", "America's Got Talent",
"Real Series - Rakuten TV", "Comedy Dynamics", "Sky Mix", "World Drama by ITV Studios",
"Radical Docs", "Documentaries - Rakuten TV", "INWONDER", "INFAST", "PBS History", "INWILD",
"CNN FAST", "FRANCE 24 FAST", "Bloomberg Originals", "FIFA+", "Red Bull TV", "Trace UK", "GIGS",
"Tennis Channel International", "Origin Sports", "INTROUBLE", "Trace UK", "Qwest TV",
"Deluxe Lounge HD", "Qello Concerts by Stingray", "Clubbing TV", "Romance Movies - Rakuten TV",
"wedo movies", "MovieSphere", "GREAT! movies", "GREAT! romance", "Top Movies - Rakuten TV",
"Drama Movies - Rakuten TV", "Action Movies - Rakuten TV", "Crime Network",
"The Graham Norton Show", "Horizons", "Super Anime", "GIGS", "Trace Urban", "XITE Hits",
"Pointless UK: 'Powered by Banijay'", "Challenge", "Wipeout Xtra Powered by Banijay", "Sony One Comedy TV",
"Sony One Dragons Den", "Sony One Thriller TV", "Sony One FAVES", "Sony One Action HITS", "Sony One Comedy TV",
"True Crime UK"]
samsung_us_channels = ["History 365", "ION Plus", "VICE", "MHz Now", "The Rotten Tomatoes Channel",
"ION Mystery", "fubo Sports Network", "Tastemade Home", "Tastemade Travel", "Journy",
"Hungry", "Kitchen Nightmares", "Conan O'Brien TV", "Dry Bar Comedy", "RiffTrax", "FilmRise",
"Samsung Wild Life", "TED", "PBS Digital Studios", "XITE Icons", "XITE Rock On",
"XITE Just Chill", "FilmRise Action", "Documentary+", "NEW KMOVIES", "The Preview Channel"]
roku_channels = ["NBC Sports", "Women's Sports Network", "Stadium", "For The Fans", "Swerve Combat", "DAZN Ringside",
"Torque", "SPORTSGRID", "Redbox Romance", "REDBOX FREE MOVIES", "FilmRise British TV", "RetroCrush",
"Rakuten Viki", "AsianCrush", "Crunchyroll", "FilmRise Sci-Fi", "WMX Hip Hop", "WMX Pop", "WMX Rock",
"Midnight Pulp", "Electric Now", "Torque", "SNL Vault"]
pluto_uk = M3uParser(timeout=5, useragent=user_agent)
pluto_uk.parse_m3u(pluto_uk_url)
print(f"Pluto UK: Loaded {len(pluto_uk.get_list())} channels")
pluto_uk.filter_by("name", pluto_gb_channels, retrieve=True)
pluto_uk.to_file("pluto_uk_curated", "m3u")
stv_uk = M3uParser(timeout=5, useragent=user_agent)
stv_uk.parse_m3u(stv_uk_url)
print(f"SS UK: Loaded {len(stv_uk.get_list())} channels")
stv_uk.filter_by("name", samsung_uk_channels, retrieve=True)
stv_uk.to_file("ss_uk_curated", "m3u")
stv_us = M3uParser(timeout=5, useragent=user_agent)
stv_us.parse_m3u(stv_us_url)
print(f"SS US: Loaded {len(stv_us.get_list())} channels")
stv_us.filter_by("name", samsung_us_channels, retrieve=True)
stv_us.to_file("ss_us_curated", "m3u")
#roku = M3uParser(timeout=5, useragent=user_agent)
#roku.parse_m3u(roku_url)
#print(f"Roku: Loaded {len(roku.get_list())} channels")
#roku.filter_by("name", roku_channels, retrieve=True)
#roku.to_file("roku_curated", "m3u")
pluto_us = M3uParser(timeout=5, useragent=user_agent)
pluto_us.parse_m3u(pluto_us_url)
print(f"Pluto US: Loaded {len(pluto_us.get_list())} channels")
pluto_us.filter_by("name", pluto_us_channels, retrieve=True)
pluto_us.to_file("pluto_us_curated", "m3u")
print()