Spaces:
Sleeping
Sleeping

Refactor Embed class by removing unused Host header; clean up NetFree class by deleting VideoData dataclass; remove unused import in VidSrc class; add requirements file with dependencies.
2b8e50d
import requests | |
class NetFree: | |
def __init__(self): | |
self.base_url = "https://netfree2.cc" | |
self.video_data_list = [] | |
self.cookies = "" | |
def get_cookies(self): | |
cookies = requests.get("https://netmirror.8man.me/api/cookie").json()['cookie'].replace("Asu", "Ani") | |
self.cookies = cookies | |
def get_id(self, title): | |
self.get_cookies() | |
search_result = requests.get(f"{self.base_url}/mobile/search.php?s={title}", headers={"cookie": self.cookies}).json()['searchResult'] | |
for result in search_result: | |
if result['t'] == title: | |
id = result['id'] | |
return id | |
return search_result[0]['id'] | |
return None | |
def get_stream(self, tmdb_id, imdb_id, media_type, title, year, season=None, episode=None): | |
self.video_data_list = [] | |
id = self.get_id(title) | |
if not id: | |
return self.video_data_list | |
final_url = f"{self.base_url}/mobile/playlist.php?id={id}" | |
response = requests.get(final_url, headers={"cookie": self.cookies}) | |
if response.status_code != 200: | |
return self.video_data_list | |
data = response.json()[0]['sources'] | |
for stream in data: | |
self.video_data_list.append({ | |
"videoSource": f"NETFREE_{len(self.video_data_list)+1} ({stream['label']}) Multi-Lang", | |
"videoUrl": f"{self.base_url}{stream['file']}", | |
"videoHeaders": {} | |
}) | |
return self.video_data_list | |