1.14

py爬取是视频
 
import yt_dlp
import os

def download_video(url, save_path='.', cookies_path=None):
"""
下载YouTube视频
:param url: 视频的URL地址
:param save_path: 保存视频的路径,默认为当前目录
:param cookies_path: Cookies文件路径,如果需要绕过YouTube的登录验证
"""
try:
# 确保保存路径存在
if not os.path.exists(save_path):
os.makedirs(save_path)

# 设置下载配置
ydl_opts = {
'outtmpl': os.path.join(save_path, '%(title)s.%(ext)s'), # 设置下载后的视频文件名和路径
'noplaylist': True, # 只下载单个视频,不下载整个播放列表
}

# 如果有提供Cookies文件路径,则添加该选项
if cookies_path:
if os.path.exists(cookies_path):
ydl_opts['cookiefile'] = cookies_path
else:
print(f"提供的Cookies文件路径无效: {cookies_path}")
return

# 使用 yt-dlp 下载视频
with yt_dlp.YoutubeDL(ydl_opts) as ydl:
ydl.download([url])

print("视频下载完成")
except yt_dlp.utils.DownloadError as e:
print(f"下载失败: {e}")
except Exception as e:
print(f"发生错误: {e}")

if __name__ == "__main__":
# 输入视频的URL
url = input("请输入YouTube视频URL: ")

# 输入保存路径
save_path = input("请输入保存路径(默认为当前目录): ").strip()
if not save_path:
save_path = '.' # 默认保存到当前目录

# 输入Cookies文件路径(如果需要)
cookies_path = input("请输入Cookies文件路径(如果有的话,留空则不使用): ").strip()
if not cookies_path:
cookies_path = None # 没有Cookies文件则不传递

# 调用下载函数
download_video(url, save_path, cookies_path)
posted @ 2025-01-14 10:40  赵千万  阅读(21)  评论(0)    收藏  举报