import requests
from bs4 import BeautifulSoup
# from functions import *

import requests, re, json
from bs4 import BeautifulSoup

logedin = ''
with open('logedin.txt', 'r') as f:
    for line in f:
        logedin = line.strip()
        break
    


import os
try:
    os.remove('linksaman.txt')
except:
    pass



def get_links_movie(id, name, imdb):
    cookies = {'wordpress_logged_in_7a04687845b0293923d85c8b5afee67b': logedin}
    headers = {
        'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
        'accept-language': 'en-US,en;q=0.9,fa;q=0.8',
        'cache-control': 'max-age=0',
        'priority': 'u=0, i',
        'referer': 'https://late-moon-ee52.appversion6.workers.dev/transformers-one-2024/',
        'sec-ch-ua': '"Chromium";v="130", "Google Chrome";v="130", "Not?A_Brand";v="99"',
        'sec-ch-ua-mobile': '?0',
        'sec-ch-ua-platform': '"macOS"',
        'sec-fetch-dest': 'document',
        'sec-fetch-mode': 'navigate',
        'sec-fetch-site': 'same-origin',
        'sec-fetch-user': '?1',
        'upgrade-insecure-requests': '1',
        'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36',
    }
    response = requests.get('https://late-moon-ee52.appversion6.workers.dev/play/'+str(id)+'/', cookies=cookies, headers=headers)
    soup = BeautifulSoup(response.text, 'html.parser')
    mp4s = re.findall(r'https://(.*?).mp4', response.text)
    # print(mp4s)
    for x in mp4s:
        link = ('https://'+ x +'.mp4')
        add = open('linksaman.txt', 'a')
        add.write(str(id) + ';' + name + ';' + imdb + ';' + str(link) + '\n')
        add.close()
        
    vtts = re.findall(r'https://(.*?).vtt', response.text)
    vtts = list(set(vtts))
    for x in vtts:
        if 'Dubbed' not in x:
            link_srt = ('https://'+ x +'.vtt')
            add = open('linksaman.txt', 'a')
            add.write(str(id) + ';' + name + ';' + imdb + ';' + str(link_srt)+ '\n')
            add.close()

def get_links_serial(id, name, imdb):
    cookies = {'wordpress_logged_in_7a04687845b0293923d85c8b5afee67b': logedin,}
    headers = {
        'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
        'accept-language': 'en-US,en;q=0.9,fa;q=0.8',
        'priority': 'u=0, i',
        'sec-ch-ua': '"Chromium";v="130", "Google Chrome";v="130", "Not?A_Brand";v="99"',
        'sec-ch-ua-mobile': '?0',
        'sec-ch-ua-platform': '"macOS"',
        'sec-fetch-dest': 'document',
        'sec-fetch-mode': 'navigate',
        'sec-fetch-site': 'none',
        'sec-fetch-user': '?1',
        'upgrade-insecure-requests': '1',
        'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36',
    }
    response = requests.get('https://late-moon-ee52.appversion6.workers.dev/play/'+str(id)+'/',  cookies=cookies, headers=headers)
    json_data = re.findall(r'"file"(.*?)}', str(response.text).replace('\/', '/'))
    for x in json_data:
        try:
            json_loaded = json.loads('{"file"'+x+'}')
            file = (json_loaded['file']).split('.mp4')[0]+'.mp4'
            try:
                fa_vtt = str(str(json_loaded['fa_vtt']).split('.vtt')[0])+'.vtt'
            except:
                fa_vtt = ''
            season = str(int(json_loaded['season']) + 1)
            part = str(int(json_loaded['part']) + 1)
            # print(file, fa_vtt, season, part)
            add = open('linksaman.txt', 'a')
            add.write(str(id) + ';' + str(name) + ';' + str(part) + ';' + str(season) + ';' + imdb + ';' + str(fa_vtt) + ';' + str(file) + '\n')
            add.close()
        except Exception as e:
            print(e)
            pass





links = ['https://late-moon-ee52.appversion6.workers.dev/series/page/']
# links = ['https://late-moon-ee52.appversion6.workers.dev/all-movie/page/']
# links = ['https://late-moon-ee52.appversion6.workers.dev/series/page/', 'https://late-moon-ee52.appversion6.workers.dev/all-movie/page/']

def get_data(link, page):
    cookies = {}
    headers = {
        'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
        'accept-language': 'en-US,en;q=0.9,fa;q=0.8',
        'priority': 'u=0, i',
        'referer': 'https://late-moon-ee52.appversion6.workers.dev/all-movie/',
        'sec-ch-ua': '"Google Chrome";v="131", "Chromium";v="131", "Not_A Brand";v="24"',
        'sec-ch-ua-mobile': '?0',
        'sec-ch-ua-platform': '"macOS"',
        'sec-fetch-dest': 'document',
        'sec-fetch-mode': 'navigate',
        'sec-fetch-site': 'same-origin',
        'sec-fetch-user': '?1',
        'upgrade-insecure-requests': '1',
        'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36',
    }

    response = requests.get(link+str(page)+'/?sortby=modified', cookies=cookies, headers=headers)
    soup = BeautifulSoup(response.text, 'html.parser')
    l = []
    
    for link in soup.find_all('div', class_='inner_cover'):
        try:
            playOnline = link.find('div', class_='btnPlayOnlineitem')
            pathl = playOnline.find('path')
            name = link.find('a')['title']
            id = str(link.find('img')['alt']).split('-')[0].replace(name, '').strip()
            link = link.find('a')['href']
            l.append((id, name, link))
        except:
            pass
    
        
    return l
    
out = []
pages = 1212
for link in links:
    for page in range(1, pages):
        l = get_data(link, page)
        out.extend(l)
        

print("I'm Here")
# print(out)
# exit()


def get_details_movies(id, name, link):
    cookies = {'hide_top_message': '1',}
    headers = {
        'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
        'accept-language': 'en-US,en;q=0.9,fa;q=0.8',
        'cache-control': 'max-age=0',
        'priority': 'u=0, i',
        'referer': 'https://late-moon-ee52.appversion6.workers.dev/all-movie/page/2/',
        'sec-ch-ua': '"Chromium";v="130", "Google Chrome";v="130", "Not?A_Brand";v="99"',
        'sec-ch-ua-mobile': '?0',
        'sec-ch-ua-platform': '"macOS"',
        'sec-fetch-dest': 'document',
        'sec-fetch-mode': 'navigate',
        'sec-fetch-site': 'same-origin',
        'sec-fetch-user': '?1',
        'upgrade-insecure-requests': '1',
        'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36',
    }

    response = requests.get(link, cookies=cookies, headers=headers)
    soup = BeautifulSoup(response.text, 'html.parser')

    imdb = ''
    soup = BeautifulSoup(response.text, 'html.parser')
    try:
        for alla in soup.find_all('a'):
            if '/title/' in str(alla['href']):
                imdb = str(alla['href']).split('/')[-2].strip()
                break
    except:
        pass
        
    try:
        get_links_movie(id, name, imdb)
    except:
        pass
    try:
        get_links_serial(id, name, imdb)
    except:
        pass

    # print(id, name, link)
    print(imdb)




# get_links_serial('418554', 'دانلود انیمه Fate/strange Fake', 'tt32864316')
# get_links_serial('306467', 'دانلود سریال Mayfair Witches', 'tt15428778')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('323914', 'دانلود سریال کره‌ای The Golden Spoon', 'tt22248234')
# get_links_serial('384971', 'دانلود انیمه Solo Leveling', 'tt21209876')
# get_links_serial('409257', 'دانلود انیمه Toilet-bound Hanako-kun', 'tt10777610')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_serial('425703', 'دانلود سریال Daredevil: Born Again', 'tt18923754')
# get_links_serial('427732', 'دانلود انیمیشن Fog Hill of Five Elements', 'tt12953630')
# get_links_serial('58885', 'دانلود سریال Dom', 'tt13354188')
# get_links_serial('115218', 'دانلود مستند Neymar: The Perfect Chaos', 'tt16428640')
# get_links_movie('116724', 'دانلود فیلم Spider-Man: No Way Home 2021', 'tt10872600')
# get_links_movie('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_movie('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_movie('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_movie('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_movie('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# get_links_movie('xxxxxxxx', 'xxxxxxxx', 'xxxxxxxxx')
# hunter x hunter
#Taj: Divided by Blood

links = list(set(out))
for x in links:
    try:
        get_details_movies(x[0], x[1], x[2])
    except:
        pass
    # exit()
