Giter VIP home page Giter VIP logo

Comments (11)

SigureMo avatar SigureMo commented on September 18, 2024 2

唔 我看了下这个课程确实不能用,有空我试着改一下,如果急用可以临时使用这个mooc-dl

(仅限临时使用,功能不齐全,而且视频会直接下载,可能出现些小 bug 什么的)

from course-crawler.

billchenchina avatar billchenchina commented on September 18, 2024 2

我想起来啦,mooc-dl 你提过 pr 来着,我说头像有点熟悉的感觉~

不过你看的貌似不是我的分支呢,我的分支看这里,因为 Foair 销声匿迹好久了(我开始关注这个项目之后他就……不见了,之后只出现过一次),我只能在我的分支上做些小修复

如果真的旧接口也无效的话,我只能将比较稳定的手机端接口接进来了(也就是 mooc-dl)

介个貌似也不是很星QAQ
image

刚刚做了一下输出调试 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.

SigureMo avatar SigureMo commented on September 18, 2024 1

我想起来啦,mooc-dl 你提过 pr 来着,我说头像有点熟悉的感觉~

不过你看的貌似不是我的分支呢,我的分支看这里,因为 Foair 销声匿迹好久了(我开始关注这个项目之后他就……不见了,之后只出现过一次),我只能在我的分支上做些小修复

如果真的旧接口也无效的话,我只能将比较稳定的手机端接口接进来了(也就是 mooc-dl)

from course-crawler.

SigureMo avatar SigureMo commented on September 18, 2024

算是临时修复了下@1c1d35c8b,但是该修复方式我并不是很满意,因为是使用的旧接口

在去年这个时候网易对视频获取接口进行了变动,旧接口获取的视频 url 全是错误的,但是按照 #27#20 中的方法对视频 url 进行修改是可以获得真实 url 的,但我考虑到这个接口可能在以后某个时刻被彻底放弃掉,就对新接口进行了支持,唯一麻烦的是,新接口需要 cookies ,不过我认为这样更稳妥一些,在几个版本后我彻底删掉了旧接口

现在因为新接口仅支持 m3u8 ,如果不想办法下载并合并的话,新接口是不适合的,所以暂时使用了旧接口

旧接口的使用方法的话,在第一次使用时要求输入 cookies 时按回车即可(注入空的 cookies),如果已经注入了 cookies ,请在运行时增加参数 -c 以重新输入 cookies (也是回车即可)

其实我也是有些其他的解决方案的,比如直接利用上面提到的手机端接口(mooc-dl),但我更倾向于重构整体代码以更好地支持下载器的调用,但限于时间与精力,初步尝试后我还是搁置了,emmmmmm 今后可能也没太多时间关注这边了

from course-crawler.

billchenchina avatar billchenchina commented on September 18, 2024

再次复现

(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.

SigureMo avatar SigureMo commented on September 18, 2024

@billchenchina 按我上面的方法重试了吗 更新到我的最新版本 使用参数 -c 清除cookies启动 ,并回车注入空cookies

如果该方法也无效 临时使用上面的 mooc-dl 吧

ps: 学完 Python 可以参与进来呢~我当年也是这门课入门滴:joy:

from course-crawler.

billchenchina avatar billchenchina commented on September 18, 2024

@billchenchina 按我上面的方法重试了吗 更新到我的最新版本 使用参数-c清除cookies启动 ,并回车注入空cookies

如果该方法也无效 临时使用上面的 mooc-dl吧

ps: 学完 Python 可以参与进来呢~我当年也是这门课入门滴

也无效呢~而且在 mooc.py 里面

from mooc import icourse163

好像少一行
cookies = store_cookies('icourse163.json')
加上也没用😂😂
之前我就用 mooc-dl 来着😂被你 redirect 到的这里
(会参与进来的)

from course-crawler.

SigureMo avatar SigureMo commented on September 18, 2024

我想起来啦,mooc-dl 你提过 pr 来着,我说头像有点熟悉的感觉~
不过你看的貌似不是我的分支呢,我的分支看这里,因为 Foair 销声匿迹好久了(我开始关注这个项目之后他就……不见了,之后只出现过一次),我只能在我的分支上做些小修复
如果真的旧接口也无效的话,我只能将比较稳定的手机端接口接进来了(也就是 mooc-dl)

介个貌似也不是很星QAQ
image

刚刚做了一下输出调试 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 avatar czt475297133 commented on September 18, 2024

你好~~我想问下移动端的接口你是在哪里找的?

from course-crawler.

czt475297133 avatar czt475297133 commented on September 18, 2024

我想起来啦,mooc-dl 你提过 pr 来着,我说头像有点熟悉的感觉~
不过你看的貌似不是我的分支呢,我的分支看这里,因为 Foair 销声匿迹好久了(我开始关注这个项目之后他就……不见了,之后只出现过一次),我只能在我的分支上做些小修复
如果真的旧接口也无效的话,我只能将比较稳定的手机端接口接进来了(也就是 mooc-dl)

介个貌似也不是很星QAQ
image
刚刚做了一下输出调试 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.

SigureMo avatar SigureMo commented on September 18, 2024

@czt475297133 使用 Fiddler 抓包,详情自行搜索引擎搜索「移动端抓包」

from course-crawler.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.