Python开发YouTube下载器时如何将文件重定向到用户下载文件夹
解决方案
实现逻辑
你只需要先获取系统默认下载文件夹的路径,再将路径传入pytube的download()方法的output_path参数即可,不需要修改原有下载逻辑,以下是跨平台兼容的实现方案,不需要安装额外第三方依赖:
import os from pytube import YouTube def get_default_download_path(): # 兼容Windows、macOS、Linux的默认下载路径获取 home_dir = os.path.expanduser("~") download_path = os.path.join(home_dir, "Downloads") # 适配中文Windows系统下载目录名称为「下载」的场景 if not os.path.exists(download_path): download_path = os.path.join(home_dir, "下载") return download_path # 获取默认下载路径 target_save_path = get_default_download_path() # 下载时传入路径参数 video = YouTube("https://www.youtube.com/watch?v=Wcj_tkFAX-o").streams.get_highest_resolution().download(output_path=target_save_path)
补充说明
- 如果需要更高的系统路径适配性,可以调用Windows系统API获取KnownFolder,或是使用第三方库
appdirs的user_download_dir()方法直接获取标准下载路径 - 如果需要自定义保存文件名,可以额外给
download()方法传入filename参数指定文件名,不需要和YouTube原视频名称保持一致
内容的提问来源于stack exchange,提问作者dekaottoman
相关产品推荐
相关产品推荐

