1
0
Fork 0
mirror of https://github.com/Findus23/cr-search.git synced 2024-09-19 15:23:44 +02:00
This commit is contained in:
Lukas Winkler 2021-07-15 20:26:33 +02:00
parent 93a4a0d521
commit f84b9be8b7
Signed by: lukas
GPG key ID: 54DE4D798D244853
3 changed files with 12 additions and 9 deletions

View file

@ -17,7 +17,7 @@ from utils import srtdir, pretty_title, title_to_episodenumber, clear_cache
static_path = Path("static")
def main(args) -> None:
def main(args: argparse.Namespace) -> None:
os.nice(15)
for series in series_data:
name = series.name
@ -36,14 +36,16 @@ def main(args) -> None:
ydl_opts = {
'extract_flat': True
}
if series.playlist_id:
if playlist_id:
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
playlist = ydl.extract_info("https://www.youtube.com/playlist?list=" + playlist_id, download=False)
videos = playlist["entries"]
urls = [v["url"] for v in videos]
else:
elif series.videos:
urls = series.videos
else:
raise ValueError("either set playlist or videos for series")
ydl_opts_download = {
"writesubtitles": True,
"subtitleslangs": ["en", "en-US"],

View file

@ -17,7 +17,7 @@ class Series(BaseModel):
is_campaign = BooleanField()
single_speaker = BooleanField()
def __str__(self):
def __str__(self) -> str:
return f"<Series: {self.title}>"
@ -42,7 +42,7 @@ class Episode(BaseModel):
def name(self) -> str:
return f"C{self.season}E{self.episode_number:03d}"
def __str__(self):
def __str__(self) -> str:
return f"<Episode: {self.title}>"
@ -54,7 +54,7 @@ class Person(BaseModel):
class Meta:
indexes = ((("name", "series"), True),)
def __str__(self):
def __str__(self) -> str:
return f"<Person: {self.name}>"
@ -72,7 +72,7 @@ class Line(BaseModel):
class Meta:
indexes = ((("episode", "order"), True),)
def __str__(self):
def __str__(self) -> str:
return f"<Line: {self.pk}>"
@ -84,5 +84,5 @@ class Phrase(BaseModel):
class Meta:
indexes = ((("text", "episode"), True),)
def __str__(self):
def __str__(self) -> str:
return f"<Line: {self.text} ({self.pk})>"

View file

@ -28,13 +28,14 @@ That said, I try to only use phrases that don't contain spoilers themselves.
#
"""
from dataclasses import dataclass
from typing import Optional
@dataclass
class Suggestion:
text: str
# only show this suggestion to people who have watched at least this episode
episode: int = None
episode: Optional[int] = None
suggestions = {