---
# System prepended metadata

title: 一个批量下载慕课网视频的小脚本

---

一个批量下载慕课网视频的小脚本
===

最近在看一本叫做《八次危机》的书，后来发现在超星尔雅上有作者相关讲座的视频，内容比书要多一些，本来内容就有点露骨，想赶紧下载下来。上面还有很多好课，好到可能过一阵子就消失了的那种，之前根本没看过这种官方网课，我连挂机脚本都懒得用，随便让学弟挂一挂就刷过去了，还真没注意有很多好东西······

---
 
像中国大学慕课，网易之类的网站github上有其他人写的工具，很成熟。但是有些老版的网页用不了，比如说我想下载的温铁军老师的《十次危机》系列课程就是这样，只能自己动手丰衣足食了。
超星慕课其实提供了视频下载的接口，而且每个视频都有独一无二的id，这两个东西都可以比较容易的找到，于是乎就可以写脚本批量下载了。
视频下载接口：http://d0.ananas.chaoxing.com/download/视频id
视频id：这个变量是objectId，是一串字母+数字的代码
所以只要把url拼出来就行了，具体思路很无脑。访问每个页面然后找出来就行，然后批量下载。

就是用fake_useragen随机生成一个UA，放到request里，把网页爬下来，用BeautifulSoup和正则去匹配，完整的url就都有了。最后才发现我用的还是python2，算了
有通用版本和旧网站专用版。旧网站专用版是给那些有二级菜单的课程用的，下载下来的视频没有顺序，凑活用吧，这种课很少，几乎没有，但让我碰上了。通用版没什么问题，给没有二级菜单的课程下载视频用的，绝大部分都是这样的课程。
详细的代码在这：https://github.com/786662216/mooc_download/

2020.4.4