用Python批量下载MOOC资源

简介

这是我编写的一个Python脚本,用来批量下载一门MOOC的资源,包括视频、PDF和课程目录。

你是否也曾上MOOC学习过?有没有和我一样遇到这些情况:

  1. 在线看MOOC视频消耗流量好多,或者浏览器仅支持的2倍速也无法满足你飞速的头脑,所以想要去免费网络处集中全部下载到电脑里
  2. 老师的课件好精美,想要保存到本地,可以随时快速查阅
  3. 纯粹是有收集癖,想把学习过的东西都保存到本地

那么,这个python脚本可能会帮到你,下面我来详细介绍它的使用方法

在这里插入图片描述

使用步骤

第一步 运行脚本

  1. (推荐)如果你的计算机是Windows系统,那么我已经为你将py文件变成了一个exe文件,就是mooc_dload.exe,直接运行它即可;
  2. 如果你的电脑上已经有一个Python的IDE,或者其他可以运行Python脚本的软件,你也可以将mooc_dload.py放在一个单独的文件夹下通过IDE运行。

第二步 输入MOOC课程编号

运行后会弹出一个黑色的窗口,提示我们输入课程编号,课程就是你想要下载的MOOC课程,在网页中打开该课程后,浏览器的URL此时为:https://www.icourse163.org/course/BIT-1001870001 (以《Python网络爬虫与信息提取》这门课为例)它的课程编号就是BIT-1001870001,我们直接在黑色的窗口中输入这个编号后回车。

窗口会不断更新给出已经下载的课程目录,耐心等待全部下载完成。

第三步 查看下载结果

回到我们最初放置mooc_dload文件的目录,此时我们可以看到,文件夹中出现了几个新的文件,分别是PDFs、Links.txt、TOC.txt和Rename.bat,下面是它们各自的说明:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第四步 下载视频

你可能发现脚本并没有直接下载视频,而是下载了视频的下载链接。因为我考虑到直接下载视频的话会使脚本运行时间过长,一旦中间不小心关闭窗口或者因为网络不稳定等原因使脚本终止,就只能删掉下载好的部分视频重新来过;对于有的MOOC包含的视频实在太长太多,我们可能会想要分批下载保存;另外,脚本默认的下载方式往往不是最快的,我们可以用链接+下载器的方式更好实现我们的下载。

这里我以迅雷为例

打开Links.txt,复制全部内容;打开迅雷软件-新增下载任务,迅雷会自动填入剪贴板中的链接,选择好下载目录开始下载。(最好新建一个专门的文件夹集中存放视频)

最终下载好的视频文件是原始名字,一般都是一串看不懂的字符,为了方便找到我们要看的视频,我们将Rename.bat拷贝到视频文件的目录下,双击运行,所有视频的名字就被改正过来了。

在这里插入图片描述

写在最后

  1. 到此,MOOC资料就成功保存在本地了,可以随时随地用任意倍速观看了,这里推荐一个很好用的播放器:PotPlayer。
  2. 我测试的时候是下载《Python网络爬虫与信息提取》、后来又测试《C语言程序设计》、《Python机器学习应用》也是OK的,但是后来我发现,现在MOOC上的一部分课程后台做了修改,这些课程故意隐藏了链接,导致我们通过爬虫无法获取到视频的链接了,所以对于这部分课程目前这个脚本只能获取除了视频以外的资源,我相信应该是可以通过改进代码获取到的,但是我目前的水平有限,期待你来补充改进,把他做完美。
  3. 编写源码的过程中借鉴了网上的一些代码,由于太杂,过程中没有留心记录,所以这里也没有办法标明参考目录,如果有原作看到自己的部分希望联系我:comajor@buaa.edu.cn,我会在文档中标注出处。
  4. 源码已经开源在我的Github:https://github.com/comajor/mooc_dload
  5. 仅作为学习交流,请不要用于商业用途。
  6. 希望这篇文档能对你有帮助,比心 ❤️
打赏

相关文章

推荐教程

#
数据结构与算法——Java实现 7.习题——反转链表
#
C++校招面经(二)
#
Redis——redispluspls库hash及zset类型相关接口使用
#
【网络安全 | 靶机搭建】解决虚拟机联网问题(NAT模式)
#
射击靶标检测系统源码分享
#
MySQL数据库迁移与备份实录
#
macOS 中搭建 Flutter 开发环境
#
【案例72】Apache检测到目标 URL 存在 http host 头攻击漏洞的解决方案
#
集群聊天服务器项目【C++】(六)MySql数据库
#
C#中判断socket是否已断开的方法
#
this 指向
#
GlusterFS 分布式文件系统
1
7 天 600 stars, Mobi.css 是如何诞生的
2
HTML-CSS-JS
3
OpenCms JSP标签详解——cms:property标签
4
网站国际化 前端翻译(多语言)解决方案
5
我的编程之路:从好玩到玩好
6
夏日葵电商:微信商城系统开发,分享产品运营几大细节

手机版浏览

扫一扫体验

微信公众账号

微信扫一扫加关注

返回
顶部

深圳SEO优化公司大丰盐城网站优化方案清远本地的免费网站优化河南正规网站seo优化网站甘肃正规的网站关键词优化武昌优化网站上海公司网站优化定制方案辽宁餐饮行业网站优化要多少钱大港网站优化咨询电话南京网站优化怎么做优化师如何建立自己网站复制别人的网站优化好收录吗国外免费优化网站姜堰网站推广优化公司网站具体内容优化优化网站建设权威机构东莞外贸网站关键词优化费用如何优化不发文的网站东台网站优化服务商网站首页优化怎么样罗定网站权重优化网站php的优化面试题李沧网站快速优化宣城企业网站排名优化哪家有名上海官网网站优化哪家好百度网站快速排名优化武汉网站优化学习保定优化网站上海专业网站优化网站文章优化和长短有关系吗木工机械网站seo优化专家歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化