Comments (11)
唔 我看了下这个课程确实不能用,有空我试着改一下,如果急用可以临时使用这个mooc-dl
(仅限临时使用,功能不齐全,而且视频会直接下载,可能出现些小 bug 什么的)
from course-crawler.
我想起来啦,mooc-dl 你提过 pr 来着,我说头像有点熟悉的感觉~
不过你看的貌似不是我的分支呢,我的分支看这里,因为 Foair 销声匿迹好久了(我开始关注这个项目之后他就……不见了,之后只出现过一次),我只能在我的分支上做些小修复
如果真的旧接口也无效的话,我只能将比较稳定的手机端接口接进来了(也就是 mooc-dl)
介个貌似也不是很星QAQ
刚刚做了一下输出调试 qwq,
video['videoUrl']
是 http://jdvodrvfb210d.vod.126.net/mooc-video/nos/hls/{yyyy}/{mm}/{dd}/{something}.m3u8?ak={something}
格式的,video['format']
是 hls
。
from course-crawler.
我想起来啦,mooc-dl 你提过 pr 来着,我说头像有点熟悉的感觉~
不过你看的貌似不是我的分支呢,我的分支看这里,因为 Foair 销声匿迹好久了(我开始关注这个项目之后他就……不见了,之后只出现过一次),我只能在我的分支上做些小修复
如果真的旧接口也无效的话,我只能将比较稳定的手机端接口接进来了(也就是 mooc-dl)
from course-crawler.
算是临时修复了下@1c1d35c8b,但是该修复方式我并不是很满意,因为是使用的旧接口
在去年这个时候网易对视频获取接口进行了变动,旧接口获取的视频 url 全是错误的,但是按照 #27 和 #20 中的方法对视频 url 进行修改是可以获得真实 url 的,但我考虑到这个接口可能在以后某个时刻被彻底放弃掉,就对新接口进行了支持,唯一麻烦的是,新接口需要 cookies ,不过我认为这样更稳妥一些,在几个版本后我彻底删掉了旧接口
现在因为新接口仅支持 m3u8 ,如果不想办法下载并合并的话,新接口是不适合的,所以暂时使用了旧接口
旧接口的使用方法的话,在第一次使用时要求输入 cookies 时按回车即可(注入空的 cookies),如果已经注入了 cookies ,请在运行时增加参数 -c
以重新输入 cookies (也是回车即可)
其实我也是有些其他的解决方案的,比如直接利用上面提到的手机端接口(mooc-dl),但我更倾向于重构整体代码以更好地支持下载器的调用,但限于时间与精力,初步尝试后我还是搁置了,emmmmmm 今后可能也没太多时间关注这边了
from course-crawler.
再次复现
(venv) $ python mooc.py https://www.icourse163.org/course/BIT-268001
Python语言程序设计 - 北京理工大学
【第0周】课程导学
0.1 课程基本情况
【视频】开课彩蛋: 新开始新征程 ...
【视频】课程定位与目标
【视频】课程教学安排
【视频】课程学习建议
【文档】0.1 课程基本情况
0.2 全课程内容导学 (必看: 课程内容渐进式体验)
【视频】课程内容概述
【视频】课程内容渐进式体验
【文档】0.2 课程内容导学
(此处由于太长,省略)
------> 实例12-政府工作报告词云源代码.zip
------> 1.1.1 开课彩蛋 新开始新征程 ....mp4
Traceback (most recent call last):
File "mooc.py", line 87, in <module>
main()
File "mooc.py", line 62, in main
icourse163.start(args.url, config)
File "/home/billchenchina/桌面/venv/mooc/icourse163.py", line 175, in start
get_resource(term_id)
File "/home/billchenchina/桌面/venv/mooc/icourse163.py", line 151, in get_resource
parse_res_list(video_list, rename, parse_resource, playlist.write)
File "/home/billchenchina/桌面/venv/mooc/utils.py", line 337, in parse_res_list
res.operation(*operator)
File "/home/billchenchina/桌面/venv/mooc/utils.py", line 56, in operation
func(self)
File "/home/billchenchina/桌面/venv/mooc/icourse163.py", line 48, in parse_resource
res_print(file_name + ext)
UnboundLocalError: local variable 'ext' referenced before assignment
from course-crawler.
@billchenchina 按我上面的方法重试了吗 更新到我的最新版本 使用参数 -c
清除cookies启动 ,并回车注入空cookies
如果该方法也无效 临时使用上面的 mooc-dl 吧
ps: 学完 Python 可以参与进来呢~我当年也是这门课入门滴:joy:
from course-crawler.
@billchenchina 按我上面的方法重试了吗 更新到我的最新版本 使用参数-c清除cookies启动 ,并回车注入空cookies
如果该方法也无效 临时使用上面的 mooc-dl吧
ps: 学完 Python 可以参与进来呢~我当年也是这门课入门滴
也无效呢~而且在 mooc.py 里面
Line 61 in 78aa42c
好像少一行
cookies = store_cookies('icourse163.json')
加上也没用😂😂
之前我就用 mooc-dl 来着😂被你 redirect 到的这里
(会参与进来的)
from course-crawler.
我想起来啦,mooc-dl 你提过 pr 来着,我说头像有点熟悉的感觉~
不过你看的貌似不是我的分支呢,我的分支看这里,因为 Foair 销声匿迹好久了(我开始关注这个项目之后他就……不见了,之后只出现过一次),我只能在我的分支上做些小修复
如果真的旧接口也无效的话,我只能将比较稳定的手机端接口接进来了(也就是 mooc-dl)介个貌似也不是很星QAQ
刚刚做了一下输出调试 qwq,
video['videoUrl']
是http://jdvodrvfb210d.vod.126.net/mooc-video/nos/hls/{yyyy}/{mm}/{dd}/{something}.m3u8?ak={something}
格式的,video['format']
是hls
。
行吧……我试了,中 M 真的彻底要拥抱 hls 了应该,这个把每一段下载下来不难、合并也不难,但是不适合放在这个框架里,因为这个框架是同时支持视频自行下载(Video.txt)和即时下载(aria2)的,而且自行下载优先,如果想要支持 m3u8 的话就必须放弃自行下载这种方式,这一点我不是特别想改
后续我可能会把 mooc-dl 接口放进来,但因为它暂时仅支持爱课程账号登录(暂时我只做到了这个)其实有点不太方便,像 mooc-dl 那种内置账号并不是特别合适,所以我的推荐是暂时先用 mooc-dl 过一段时间观察一下我再考虑合并的事
另外,移动端端接口真的好稳定的说,我去年初学那会儿开始到现在近 2 年了,PC 端大改了 2 次了都,移动端还是可用 😂
from course-crawler.
你好~~我想问下移动端的接口你是在哪里找的?
from course-crawler.
我想起来啦,mooc-dl 你提过 pr 来着,我说头像有点熟悉的感觉~
不过你看的貌似不是我的分支呢,我的分支看这里,因为 Foair 销声匿迹好久了(我开始关注这个项目之后他就……不见了,之后只出现过一次),我只能在我的分支上做些小修复
如果真的旧接口也无效的话,我只能将比较稳定的手机端接口接进来了(也就是 mooc-dl)介个貌似也不是很星QAQ
刚刚做了一下输出调试 qwq,
video['videoUrl']
是http://jdvodrvfb210d.vod.126.net/mooc-video/nos/hls/{yyyy}/{mm}/{dd}/{something}.m3u8?ak={something}
格式的,video['format']
是hls
。行吧……我试了,中 M 真的彻底要拥抱 hls 了应该,这个把每一段下载下来不难、合并也不难,但是不适合放在这个框架里,因为这个框架是同时支持视频自行下载(Video.txt)和即时下载(aria2)的,而且自行下载优先,如果想要支持 m3u8 的话就必须放弃自行下载这种方式,这一点我不是特别想改
后续我可能会把 mooc-dl 接口放进来,但因为它暂时仅支持爱课程账号登录(暂时我只做到了这个)其实有点不太方便,像 mooc-dl 那种内置账号并不是特别合适,所以我的推荐是暂时先用 mooc-dl 过一段时间观察一下我再考虑合并的事
另外,移动端端接口真的好稳定的说,我去年初学那会儿开始到现在近 2 年了,PC 端大改了 2 次了都,移动端还是可用 😂
你好~~我想问下移动端的接口你是在哪里找的?
from course-crawler.
@czt475297133 使用 Fiddler 抓包,详情自行搜索引擎搜索「移动端抓包」
from course-crawler.
Related Issues (20)
- **大学MOOC课程解析一半出错 HOT 4
- 添加新的网站支持 HOT 9
- 针对现阶段某些bug的修复&新功能使用的说明 HOT 5
- 网易公开课抓取不完整 HOT 12
- **大学mooc的考研课程连接地址不行
- UnicodeEncodeError: 'gbk' codec can't encode character '\u2022' in position 9: illegal multibyte sequence HOT 1
- problem from links HOT 2
- 执行完毕后找不到课程文件夹
- 执行mooc.py报错 HOT 2
- 神也是粉丝
- Bug: 当网易云课堂 MOOC 的课程章节列表乱序时,下载的课件以及视频章节数错误 HOT 3
- 下载学堂在线课程,课程信息和字幕都有,但是视频的链接没有 HOT 2
- 程序运行出错 HOT 1
- 好大学MOOC课程 没有视频下载地址等内容 HOT 2
- 程序运行报错 HOT 1
- 学堂在线无法下载视频
- 使用course-crawler如何只下载文档,不下载视频
- **大学MOOC下载报错 HOT 1
- 现在网易云课堂的还能下么。
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from course-crawler.