python大学课程-Python 爬取中国大学 MOOC 课程

article/2025/10/26 0:29:57

中国大学 MOOC 是网易旗下一款慕课视频教育网站。实话说,这是网易几款教育类产品中,我最喜欢的一个。自己也使用了一年多,观看视频都是需要联网的,但部分 MOOC 课程存在有效期,设定的学期结束即无法观看。

Course Crawler 这个爬虫工具的出现,则提供了极大的便利。

bw9WF8MQhF2q7qYNZQ8mY7.jpg

准备

第一步:安装 Python 3 环境

进入 Python 3 官网(https://www.python.org/downloads/),选择合适的版本下载安装即可。

第二步:通过 pip 安装程序要用到的3个运行库:requests,BeautifulSoup4,lxml

打开 Python 的安装目录,进入到 Scripts 目录(我这里是 C:UsersKiwiapeAppDataLocalProgramsPythonPython37-32Scripts),按住 Shift 同时鼠标右键单击资源管理器的空白区域,选择“在此处打开命令窗口”(最新版本 Win10 已使用 PowerShell 替换命令行)。

Yl7bjBBIjO1ljkoRJc6l3K.jpg

在打开的命令行窗口中输入 pip install requestsBeautifulSoup4lxml并回车。如下图,运行结束且无错误提示即安装成功。

B3d432D0c3hD8f3B84dD3D.jpg

第三步:从 Github 下载最新的 Course Crawler 程序包,并解压。

到此为止,运行环境和软件均已准备完成。

使用

解析课程资源

如下图所示,打开你需要下载的课程详情页(并非课程学习页),复制课程网址。

tn449OoVzf5oukU9c02y25.jpg

在解压出来的程序包文件夹内,用同样的方式打开命令行,并输入 python mooc.py即可下载课程到当前文件夹,其中这里的就是上面我们复制的课程网址。

v8gq77eqMq8q07CfqQ20iQ.jpg

回车后,程序随即开始解析课程资源。

等待解析完成后,我们可以在程序目录下发现以刚才课程命名的文件夹。文件夹内通常会有 Files, PDFs, Texts 三个子文件夹,和 Outline.txt, Rename.bat, Videos.txt 三个文件(具体视课程内容而定)。

R2zxwBSqQ2LkMpMVZmtSXb.jpg

其中 Files, PDFs, Texts 分别为老师上传的附件、课件、富文本,爬虫已经替你下载好了。而 Outline.txt 和 Rename.bat 分别是课程资源的结构和重命名程序,这两个我们不要动,之后会用到。

下载和整理课程视频

FQgSI7I0IpI9xibPBQI6mq.jpg

看到乱码的视频文件名,我想你应该能够猜到刚才两个文件的作用了吧!没错,等到视频都下载完成后,我们把所有乱码的 mp4 文件移动到刚才的课程目录,然后双击打开 Rename.bat ,稍等命令行闪过几秒,就可以看到,原来乱码的视频都变成了标准的小课程名。

关于程序

项目官网:https://mooc.xoy.io

Github 页面:https://github.com/Foair/course-crawler

原文:https://www.kiwiape.cn/tech/2018/08/01/download-icourse163-with-course-crawler.html 作者:kiwiape

回复下方「关键词」,获取优质资源

回复关键词「 pybook03」,立即获取主页君与小伙伴一起翻译的《Think Python 2e》电子版

回复关键词「入门资料」,立即获取主页君整理的 10 本 Python 入门书的电子版

回复关键词「m」,立即获取Python精选优质文章合集

回复关键词「book 数字」,将数字替换成 0 及以上数字,有惊喜好礼哦~

题图:pexels,CC0 授权。


http://chatgpt.dhexx.cn/article/wacqZbSW.shtml

相关文章

腾讯课堂Python课程哪家强?

腾讯课堂Python课程哪家强? 文章目录 腾讯课堂Python课程哪家强?一、前言二、数据读取和数据预处理1、数据读取2、数据处理 三、有多少人愿意花钱学Python?四、多少价位的课买的人最多?五、哪家机构的课最多?销量最好&…

python第一记,长江雨课堂抓包刷课实战

前言 发现大学群里好多代刷网课的,确实觉得好多大学网课好费时间,而且没啥用,刚好用来实战一下学的Python,就当练手了。省下来的时间不是又能多敲几行代码😃​一边省时间,还能学技能,这还不学起…

在哪能免费学习python

1、中国大学MOOC 课程很多都是高校开设的,比较推荐南京大学的《用python玩转数据》,从最基础的开始讲,由深入浅,非专业的伙伴也可以听懂。(文末送福利) 2、Python中文学习大本营 所有学习资料和教程都是…

python-seleium实现珞珈在线网课辅助观看功能

《武汉大学安全教育前置课程》网课观看辅助.py脚本 即将来到珞珈山的萌新们,在到校前,你是不是需要完成《武汉大学安全教育前置课程》?视频好多,一个一个来点击观看是不是有些疲累?快来看看这个脚本叭! 本…

python 课程学习

文章目录 目录 文章目录 前言: 一、安装anconda软件​二、使用步骤 2.1.询物理地址 2.2:复制讲义到该文件地址 2.3:OS模块学习 2.3.1 创建地址采用 os.mkdir() 2.3.2 python os.path 的使用 Python os.path() 模块 | 菜鸟教程 (runo…

免费python网络课程-python网络课程

广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! machine learning course with pythonby machine learningmindset简介本项目的目的是提供一个全面而简单…

python免费课程全套-为了学习Python,我汇总了这10个免费的视频课程!

毫无疑问,Python是目前世界上***的编程语言,它***的优势在于它将越多越多的人带入了编程领域。 近年来,学习Python的人比学习其他任何语言的人都多,许多人学Python是为了它背后的数据科学和机器学习库,当然,也有一些人学习用于Web开发的Python,有些人则学习用于编写脚本…

全套Python课程~

今天是元宵节,元宵节过后很多朋友就要开学啦~提前祝大家开学快乐! 今天给大家分享一套详细全面的Python系统课程,总共有637集,从入门到精通。大家可以先收藏下开学后后慢慢学! 【Python基础】Python_PYTHON入门_零基础…

Python进阶——网课不愁系列AI换脸技术

俗话说的好:网络一线牵,珍惜这段缘! 网络的水很深,年轻人你把握不住,众所周知照片是可以P的,但是“视频”是“P”不了的(狗头保命) 谁能想到AI换脸竟然如此便捷,在Python…

Python开发的Web在线学习教育培训网课系统

目 录 摘 要 I Abstract II 第1章 绪论 1 1.1 课题研究背景 1 1.2 课题研究目标与意义 2 1.3 课题研究内容及思路 2 第2章 系统需求分析 4 2.1系统的性能要求 4 2.2系统功能需求分析 4 2.2.1功能划分 4 2.2.2功能描述 7 2.3技术可行性分析 9 2.4相关技术简介 10 2.4.1 B/S体系相…

自学python哪个网课好,网课学python学的好吗

Python可以自学吗?有哪些不错的网课? 可以自学的,需要依据每个人的情况来决定,想要自学python对各方面有一定要求的,比如说基础好、自学能力强、理解能力强,这种情况是可以选择自学python的;相…

python免费网课-Python网课推荐——免费学习Python编程

对于想要学习python的初学者,面对网上大量的学习素材无从下手。今天小编就整理了一份详细的python教学视频合集,希望能为初学者提供一些学习的方向。 1.python入门 课程推荐:零基础入门学习Python 《小甲鱼零基础入门学习Python视频基础》(python教学版本:3.3.2)讲的是…

推荐一个学习python的网课,适合零基础

前言 如果你是零基础学习 Python,可以考虑以下几个网课: Codecademy Python 课程:该课程适合初学者,具有互动式的学习体验,可以让你快速掌握 Python 的基本知识。Udemy Python 从入门到精通课程:这个课程…

spring8-getBean()方法使用

;:getBean使用,要传数据,一个是字符串, 就是文件里的UserService 而这里的UserService就是我们配置文件的id:,第一个API 第二个API可以传入一个字节码类型。 如果某一个容器存在多个&#xff…

spring框架ApplicationContext的getBean()方法的详解

点击上方蓝字"优派编程"选择“加为星标”,第一时间关注原创干货 spring框架:接口ApplicationContext中的getBean()方法的详解 http://wp.fang1688.cn/study/318.html 我们知道可以通过ApplicationContext的getBean方法来获取Spring容器中已初始…

【细读Spring Boot源码】Spring如何获取一个Bean?BeanFactory的getBean方法

前言 在读refresh(context);时,finishBeanFactoryInitialization(beanFactory);中beanFactory.preInstantiateSingletons();用于实例化剩余所有的non-lazy-init的单例。这里包含了前置处理器和后置处理器 这里面就用到了本文主题getBean(beanName); 下面具体看看这…

Spring中关于getBean()报强制转化错误

在自学Spring时,在使用getBean()时,会报com.sakura.dao.impl.BookDaoImpl cannot be cast to com.sakura.dao.BookDao at com.sakura.App2.main(App2.java:19) 这个错误表示,不能将一个实现类BookDaoImpl类强转为BookDao接口。这个错&#…

spring源码解读之getBean方法(一)

前言 大家使用spring,最常接触到的就是bean,大家也知道spring中用一句getBean就能取出一个实例化好的bean,这个bean是属于IOC容器管理的,那么大家有没有看过getBean方法的源码呢,知不知道spring容器到底是怎么得到一个…

Spring源码之getBean(获取 bean)方法(一)解读

目录 测试类一个简单的测试类对于 ApplicationContext 和 ClassPathXmlApplicationContext 类图如下getBean() 源码解读查看 AbstractApplicationContext 中的 getBean 方法查看 AbstractBeanFactory 的 doGetBean 方法看 doGetBean 方法的流程图分析doGetBean 方法的主要流程 …

JavaBean(set和get方法)

JavaBean的规范 类中所有的成员属性都是私有,也就是 private 来修饰 提供一个公共无参数的构造方法 为所有私有的属性提供公共的 set 和 get 方法。 set方法 set 方法是有参数无返回值的,目的是通过 set 方法给 javabean 中的私有属性赋值,…