Add support for hdr & uploader tags in stream details

This commit is contained in:
mhdzumair
2024-12-30 13:58:59 +05:30
parent f57130cb86
commit 4a58c846c3
6 changed files with 13 additions and 2 deletions
+3 -1
View File
@@ -100,13 +100,15 @@ class TorrentStreams(Document):
announce_list: list[str]
languages: list[str]
source: str
uploader: Optional[str] = None
catalog: list[str]
created_at: datetime = Field(default_factory=datetime.now)
updated_at: Optional[datetime] = None
resolution: Optional[str] = None
codec: Optional[str] = None
quality: Optional[str] = None
audio: Optional[str] = None
audio: list[str] | str | None = None
hdr: list[str] | None = None
seeders: Optional[int] = None
torrent_type: Optional[TorrentType] = TorrentType.PUBLIC
is_blocked: Optional[bool] = False
@@ -99,7 +99,9 @@ class EventSeriesStorePipeline(QueueBasedPipeline):
codec=item.get("codec"),
quality=item.get("quality"),
audio=item.get("audio"),
hdr=item.get("hdr"),
source=item["source"],
uploader=item.get("uploader"),
catalog=item["catalog"],
created_at=item["created_at"],
episode_files=item.get("episodes"),
+1
View File
@@ -430,6 +430,7 @@ class BT4GScraper(BaseScraper):
codec=parsed_data.get("codec"),
quality=parsed_data.get("quality"),
audio=parsed_data.get("audio"),
hdr=parsed_data.get("hdr"),
source="BT4G",
catalog=["bt4g_streams"],
seeders=seeders,
+2
View File
@@ -136,7 +136,9 @@ class StremioScraper(BaseScraper):
codec=parsed_data["metadata"].get("codec"),
quality=parsed_data["metadata"].get("quality"),
audio=parsed_data["metadata"].get("audio"),
hdr=parsed_data["metadata"].get("hdr"),
source=parsed_data["source"],
uploader=parsed_data.get("uploader"),
catalog=[f"{self.cache_key_prefix}_streams"],
seeders=parsed_data["seeders"],
announce_list=[
+1
View File
@@ -154,6 +154,7 @@ class ZileanScraper(BaseScraper):
codec=torrent_data.get("codec"),
quality=torrent_data.get("quality"),
audio=torrent_data.get("audio"),
hdr=torrent_data.get("hdr"),
source="Zilean DMM",
catalog=["zilean_dmm_streams"],
)
+4 -1
View File
@@ -277,7 +277,8 @@ async def parse_stream_data(
[
f"📺 {stream_data.quality}" if stream_data.quality else None,
f"🎞️ {stream_data.codec}" if stream_data.codec else None,
f"🎵 {stream_data.audio}" if stream_data.audio else None,
f"🎨 {'|'.join(stream_data.hdr)}" if stream_data.hdr else None,
f"🎵 {'|'.join(stream_data.audio)}" if stream_data.audio else None,
],
)
)
@@ -298,6 +299,8 @@ async def parse_stream_data(
f"🌐 {' + '.join(stream_data.languages)}" if stream_data.languages else None
)
source_info = f"🔗 {stream_data.source}"
if stream_data.uploader:
source_info += f" 🧑‍💻 {stream_data.uploader}"
description = "\n".join(
filter(