mirror of
https://github.com/JefferyHcool/BiliNote.git
synced 2026-09-06 16:16:56 +08:00
feat: Add subtitle priority fetching and enhance mindmap export
## Subtitle Priority (Backend) - Add download_subtitles() method to base downloader - Implement Bilibili subtitle fetching with cookies support - Implement YouTube subtitle fetching - Support SRT and JSON3 format parsing - Prioritize platform subtitles over Whisper transcription ## Mindmap Export Enhancements (Frontend) - Add SVG vector export with proper viewBox handling - Add XMind format export with Chinese character encoding fix - Fix PNG/SVG export to capture full content by calling fit() before export - Add JSZip dependency for XMind export Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.5
parent
10311c1438
commit
85b24dee40
@@ -5,6 +5,7 @@ from typing import Optional, Union
|
||||
|
||||
from app.enmus.note_enums import DownloadQuality
|
||||
from app.models.notes_model import AudioDownloadResult
|
||||
from app.models.transcriber_model import TranscriptResult
|
||||
from os import getenv
|
||||
QUALITY_MAP = {
|
||||
"fast": "32",
|
||||
@@ -36,3 +37,15 @@ class Downloader(ABC):
|
||||
def download_video(self, video_url: str,
|
||||
output_dir: Union[str, None] = None) -> str:
|
||||
pass
|
||||
|
||||
def download_subtitles(self, video_url: str, output_dir: str = None,
|
||||
langs: list = None) -> Optional[TranscriptResult]:
|
||||
'''
|
||||
尝试获取平台字幕(人工字幕或自动生成字幕)
|
||||
|
||||
:param video_url: 视频链接
|
||||
:param output_dir: 输出路径
|
||||
:param langs: 优先语言列表,如 ['zh-Hans', 'zh', 'en']
|
||||
:return: TranscriptResult 或 None(无字幕时)
|
||||
'''
|
||||
return None
|
||||
|
||||
Reference in New Issue
Block a user