`
xuela_net
  • 浏览: 495155 次
文章分类
社区版块
存档分类
最新评论

如何下载coursera视频

 
阅读更多

国内观看Coursera非常卡顿,经常播放到一半就卡死了,不知道什么原因。因此只能想办法下载下来之后再看。

Github上有一个脚本点击打开链接,提供整门课程的下载服务。用着还是非常方便的,使用方法如下。

因为这个脚本用到多个python库,最好使用linux系统,我用的是debian wheezy,python2.7.3。当然你需要一个coursera账号。

将链接里面的工程打包下载,进入及一层目录,有个requirements.txt,里面含有需要的各种库和版本号,如果库的版本不对很大几率是无法运行的。

进入root命令行后,第一步安装pip组件:

apt-get install python-pip

使用pip安装需要的库:
pip install -r requirements.txt

这个过程比较慢,不过之后就可以使用脚本下载了。

打开要下载的课程的链接,如:https://class.coursera.org/scicomp-001/class/index 其中网址和class之间的字段是需要用到的.

下载这门课程需要运行的命令是:

python coursera_dl.py -u 用户名 -p 密码 scicomp-001
如果只要下载其中一部分,可以参照作者给出的说明对命令进行相应的修改:
General:                     coursera-dl -u <user> -p <pass> saas
Multiple classes:            coursera-dl -u <user> -p <pass> saas nlp proglang-2012-001
Filter by section name:      coursera-dl -u <user> -p <pass> -sf "Chapter_Four" saas
Filter by lecture name:      coursera-dl -u <user> -p <pass> -lf "3.1_" saas
Download only ppt files:     coursera-dl -u <user> -p <pass> -f "ppt" saas
Use a ~/.netrc file:         coursera-dl -n saas
Get the preview classes:     coursera-dl -n -b saas
Specify download path:       coursera-dl -n --path=C:\Coursera\Classes\ saas

Maintain a list of classes in a dir:
  Initialize:              mkdir -p CURRENT/{class1,class2,..classN}
  Update:                  coursera-dl -n --path CURRENT `ls CURRENT`

实验室百兆带宽下载速度只有15kBps,可以想象在线看时会多么的慢了。

如果下载过程中出错停止(多半是由于网络无法连接引起),可以使用bash中的for循环只下载剩余部分:

for ((i=5; i<10; ++i))  
do  
    python coursera_dl.py -u 用户名 -p 密码 $i scicomp-001
done  

其中,i的范围为待下载的lecture数字。当然,重新下载也是可以的,不知道会不会有机制判断依据下载的内容。

下载完之后,为获得权限还要修改文件所有者,使用以下命令:

chown -R user:user ./folder


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics