Skip to content

Commit 04f859a

Browse files
authored
Merge pull request #4 from MainKronos/dev
Rimosso supporto vvvvid
2 parents 2a2ce1d + c6e5a71 commit 04f859a

3 files changed

Lines changed: 7 additions & 77 deletions

File tree

animeworld/episodio.py

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
from .utility import SES
99
from .exceptions import ServerNotSupported
10-
from .server import Server, AnimeWorld_Server, VVVVID, YouTube, Streamtape
10+
from .server import Server, AnimeWorld_Server, YouTube, Streamtape
1111

1212

1313
class Episodio:
@@ -149,9 +149,7 @@ def __setServer(self, links: List[Dict], numero: str) -> List[Server]: # Per ogn
149149
"""
150150
ret = [] # lista dei server
151151
for prov in links:
152-
if prov["id"] == 3:
153-
ret.append(VVVVID(prov["link"], prov["id"], prov["name"], numero))
154-
elif prov["id"] == 4:
152+
if prov["id"] == 4:
155153
ret.append(YouTube(prov["link"], prov["id"], prov["name"], numero))
156154
elif prov["id"] == 9:
157155
ret.append(AnimeWorld_Server(prov["link"], prov["id"], prov["name"], numero))
@@ -167,8 +165,7 @@ def __sortServer(self, elem):
167165
"""
168166
Ordina i server per importanza.
169167
"""
170-
if isinstance(elem, VVVVID): return 0
171-
elif isinstance(elem, YouTube): return 1
172-
elif isinstance(elem, AnimeWorld_Server): return 2
173-
elif isinstance(elem, Streamtape): return 3
168+
if isinstance(elem, YouTube): return 0
169+
elif isinstance(elem, AnimeWorld_Server): return 1
170+
elif isinstance(elem, Streamtape): return 2
174171
else: return 4

animeworld/server.py

Lines changed: 1 addition & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -341,74 +341,7 @@ def download(self, title: Optional[str]=None, folder: str='', *, hook: Callable[
341341
"""
342342
if title is None: title = self._defTitle
343343
else: title = self._sanitize(title)
344-
return self._downloadIn(title,folder,hook=hook,opt=opt)
345-
346-
class VVVVID(Server):
347-
# Protected
348-
@HealthCheck
349-
def _getFileLink(self):
350-
anime_id = self.link.split("/")[-1]
351-
external_link = "https://www.animeworld.tv/api/episode/serverPlayerAnimeWorld?id={}".format(anime_id)
352-
"https://www.animeworld.tv/api/episode/serverPlayerAnimeWorld?id=vKmnNB"
353-
354-
sb_get = SES.get(self.link)
355-
sb_get.raise_for_status()
356-
357-
sb_get = SES.get(external_link)
358-
soupeddata = BeautifulSoup(sb_get.content, "html.parser")
359-
sb_get.raise_for_status()
360-
361-
raw = soupeddata.find("a", { "class" : "VVVVID-link" })
362-
return raw.get("href")
363-
364-
def fileInfo(self) -> Dict[str,str]:
365-
"""
366-
Recupera le informazioni del file dell'episodio.
367-
368-
```
369-
return {
370-
"content_type": str, # Tipo del file, es. video/mp4
371-
"total_bytes": int, # Byte totali del file
372-
"last_modified": datetime, # Data e ora dell'ultimo aggiornamento effettuato all'episodio sul server
373-
"server_name": str, # Nome del server
374-
"server_id": int, # ID del server
375-
"url": str # url dell'episodio
376-
}
377-
```
378-
"""
379-
380-
return self._fileInfoEx()
381-
382-
def download(self, title: Optional[str]=None, folder: str='', *, hook: Callable[[Dict], None]=lambda *args:None, opt: List[str]=[]) -> Optional[str]:
383-
"""
384-
Scarica l'episodio.
385-
386-
- `title`: Nome con cui verrà nominato il file scaricato.
387-
- `folder`: Posizione in cui verrà spostato il file scaricato.
388-
- `hook`: Funzione che viene richiamata varie volte durante il download; la funzione riceve come argomento un dizionario con le seguenti chiavi:
389-
- `total_bytes`: Byte totali da scaricare.
390-
- `downloaded_bytes`: Byte attualmente scaricati.
391-
- `percentage`: Percentuale del progresso di download.
392-
- `speed`: Velocità di download (byte/s)
393-
- `elapsed`: Tempo trascorso dall'inizio del download.
394-
- `eta`: Tempo stimato rimanente per fine del download.
395-
- `status`: 'downloading' | 'finished' | 'aborted'
396-
- `filename`: Nome del file in download.
397-
- `opt`: Lista per delle opzioni aggiuntive.
398-
- `'abort'`: Ferma forzatamente il download.
399-
400-
```
401-
return str # File scaricato
402-
```
403-
"""
404-
405-
# TODO: Il download usando VVVVID non funziona don youtube-dl
406-
raise ServerNotSupported(self.name)
407-
408-
if title is None: title = self._defTitle
409-
else: title = self._sanitize(title)
410-
return self._dowloadEx(title,folder,hook=hook,opt=opt)
411-
344+
return self._downloadIn(title,folder,hook=hook,opt=opt)
412345

413346
class YouTube(Server):
414347
# Protected

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
setuptools.setup(
77
name="animeworld",
8-
version="1.4.20",
8+
version="1.4.21",
99
author="MainKronos",
1010
description="AnimeWorld UNOFFICIAL API",
1111
long_description=long_description,

0 commit comments

Comments
 (0)