mooc-dl可以批量下载 中国大学MOOC 慕课的某一个课程的视频、课件、文档、附件,支持清晰度选择、支持指定下载目录,支持多线程方便保存到本地离线观看学习。
环境要求:
1.Python3.5及以上版本
2.爱课程账号和密码
使用:
1.克隆代码&安装依赖:
git clone https://github.com/SigureMo/mooc-dl.git
cd mooc-dl
pip install -r requirements.txt
2.修改配置信息:
在 config.json
中对一些参数进行配置就可以使用啦(登录只支持爱课程账号,因为其他的做起来太复杂,如果嫌注册太麻烦,直接使用这里放的共享账号就好)
{
"username": <icourse_user_name>, // 你的爱课程账号
"password": <icourse_password>, // 你的爱课程账号密码
"resolution": 0, // 清晰度等级,可选 0,1,2 清晰度递减
"root": "", // 下载目标根目录
"num_thread": 30, // 下载线程数
"overwrite": false, // 是否强制覆盖已有文件
"file_path_template": "{base_dir}{sep}{cnt_1} {chapter_name}{sep}{cnt_2} {lesson_name}{sep}{cnt_3} {unit_name}",
// 文件存储路径模板,可据此自定义文件存储路径
"file_types": [1, 3, 4], // 下载文件类型,可选 1,3,4,分别代表视频、PDF、附件,默认全部下载
"use_ffmpeg": false // 是否使用 FFmpeg 进行合并,需自行安装 FFmpeg
}
注:我这里系统已经安装了FFmpeg
,所以use_ffmpeg
这一项为true
,默认的是false
,下载的完整路径是/root/mooc-dl/icourse163
关于文件路径
默认的文件路径是分级的,如果你不喜欢这样的效果,完全可以修改模板进行自定义,比如类似 course-crawler 那种分类式,你只需要将模版设置成这样即可
{
"file_path_template": "{base_dir}{sep}{type}{sep}{cnt_3} {unit_name}"
}
3.下载:
下载时,只需要以网址作为参数传入即可
示例:
python mooc-dl.py https://www.icourse163.org/course/ZJU-93001?tid=1003997005
下载好的课程视频等文件会存放在当前目录下的icourse163
文件夹中。