From 5da058765925391a1686467708c0df376a950f62 Mon Sep 17 00:00:00 2001 From: Alessio Rondelli Date: Sun, 8 Jun 2025 16:08:04 +0200 Subject: [PATCH] overall better reliability of system --- cfg.json.template | 6 +++--- saturn_cli.py | 23 ++++++++++++++--------- 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/cfg.json.template b/cfg.json.template index e4c22e2..c5d1ed7 100644 --- a/cfg.json.template +++ b/cfg.json.template @@ -1,5 +1,5 @@ { -"DownDir":"/media/media/anime", -"DownPriority":["streamtape", "saturn", "streamhide", "legacy"], -"ServerLink":"www.animesaturn.tv" +"DownDir":"/home/tuxedo/Video", +"email":"##########@gmail.com", +"email_password":"#############" } diff --git a/saturn_cli.py b/saturn_cli.py index e097c12..a09d7aa 100644 --- a/saturn_cli.py +++ b/saturn_cli.py @@ -47,11 +47,14 @@ def link_ep_da_url(url): #prende la pagina del "Guarda lo Streaming" e trova il cosetta=get_soup(url).find('div', {'class':"btn btn-light w-100 mt-3 mb-3"}).parent return cosetta['href'] -def links_ep_da_scaricare(url): #prende il link output di link_ep_da_url e cerca al suo interno tutti i link di file di tutti i provider possibili ritornando un dict +def links_ep_da_scaricare(url): #prende il link output di link_ep_da_url e cerca al suo interno tutti i link da inserire in yt-dlp #print('links_ep_da_scaricare') soup=get_soup(url) cosetta=soup.find('div', {'class':'main-container'}).find('source') - links={} + links=[url,]+[link['href'] for link in soup.find('div', {'id':'wtf', 'class':'button'}).findAll('a')] + return links + +''' if cosetta: links.update({'legacy':cosetta['src']}) #legacy video format else: @@ -70,7 +73,9 @@ def links_ep_da_scaricare(url): #prende il link output di link_ep_da_url e cerca except Exception as e: pass return links +''' +''' def link_down(named_urls): #prende il dict di links_ep_da_scaricare e per quanto può converte i siti in link scaricabili tramite yt-dlp #print('link-down') #print(named_urls) @@ -95,22 +100,22 @@ def link_down(named_urls): #prende il dict di links_ep_da_scaricare e per quanto pass #print(links) return links +''' def scarica(lista,configs): #la lista sarà nella forma filepath,url e prova in ordine di priorità da conf orario=datetime.now().strftime("%d/%m/%Y %H:%M:%S") - priority=configs['DownPriority'] - urls_file=link_down(links_ep_da_scaricare(link_ep_da_url(lista[1]))) - for provider in priority: + #urls_file=link_down(links_ep_da_scaricare(link_ep_da_url(lista[1]))) + urls_file=links_ep_da_scaricare(link_ep_da_url(lista[1])) + for i in range(len(urls_file)): try: - print('['+orario+']'+'Avvio download '+provider+' per '+lista[0].split('/')[-1]) - #open(lista[0], 'wb').write(r.get(urls_file['provider']).content) + print('['+orario+']'+'Avvio download try '+str(i)+' per '+lista[0].split('/')[-1]) with YoutubeDL({'outtmpl':{'default':lista[0]},'quiet':True,'no_warnings':True,'ignoreerrors':False,'retries':10}) as ydl: - ydl.download(urls_file[provider]) + ydl.download(urls_file[i]) print('['+orario+']'+'Successo per '+lista[0].split('/')[-1]) return except Exception as e: print(e) - print('['+orario+']'+'Errore '+provider+' per '+lista[0].split('/')[-1]) + print('['+orario+']'+'Errore try '+str(i)+' per '+lista[0].split('/')[-1]) def modulo_scarica(): file = get_animu()