from app.utils.downloader import HttpStreamingDownloader from app.utils.uploader import DiskChunkUploadBackend from app.utils.youtube import YtDlpInfo def download(url: str): upload_backend = DiskChunkUploadBackend("trash_holder") downloader = HttpStreamingDownloader(upload_backend) youtube = YtDlpInfo(url) video = youtube.get_video_url("480p") video_name = youtube.title + ".mp4" audio = youtube.get_audio_url() audio_name = youtube.title + ".m4a" downloader.download(video.url, video_name, video.headers, video.chunk_size) downloader.download(audio.url, audio_name, audio.headers, audio.chunk_size) def main(): url = "https://youtu.be/OSAOh4L41Wg" download(url) if __name__ == "__main__": main()