HarryWang29 / tencentKeTang

腾讯课堂视频下载器
251 stars 69 forks source link

工具失效了嘛? #31

Closed D-en1997 closed 2 years ago

D-en1997 commented 2 years ago

工具闪退是没有配置config.yaml的原因。

但是各种配置之后可以运行了,结果下载失败了,上个周腾讯课堂的加密更新了,可能这个原因?? 以下是错误:

[138] 基于Workbench的响应谱分析和随机振动分析[sub_id:41] [139] 视频教程学习[file_id:[5285890792914200057]] [140] PPT+源文件[file_id:[192586]] TencentKeTang > d -c 139 TencentKeTang > d -c 442635 [fps:138] downloading 视频教程学习.mp4 ... 99% [=============> ] [8m1s:4s] 2022/07/19 14:04:49 getVodUrl err: keTang.Token: 鉴权服务请求后台服务失败 2022/07/19 14:05:16 getVodUrl err: keTang.Token: 鉴权服务请求后台服务失败 [fps:121] downloading 视频教程学习.mp4 ... 99% [=============> ] [3m36s:0s] 2022/07/19 14:08:28 getVodUrl err: keTang.Token: 鉴权服务请求后台服务失败 2022/07/19 14:08:28 getVodUrl err: keTang.Token: 鉴权服务请求后台服务失败 [fps:135] downloading 视频教程学习.mp4 ... 11% [> ] [3s:27s]

jami1024 commented 2 years ago

试下新版本呢

HarryWang29 commented 2 years ago

工具闪退是没有配置config.yaml的原因。

但是各种配置之后可以运行了,结果下载失败了,上个周腾讯课堂的加密更新了,可能这个原因?? 以下是错误:

[138] 基于Workbench的响应谱分析和随机振动分析[sub_id:41] [139] 视频教程学习[file_id:[5285890792914200057]] [140] PPT+源文件[file_id:[192586]] TencentKeTang > d -c 139 TencentKeTang > d -c 442635 [fps:138] downloading 视频教程学习.mp4 ... 99% [=============> ] [8m1s:4s] 2022/07/19 14:04:49 getVodUrl err: keTang.Token: 鉴权服务请求后台服务失败 2022/07/19 14:05:16 getVodUrl err: keTang.Token: 鉴权服务请求后台服务失败 [fps:121] downloading 视频教程学习.mp4 ... 99% [=============> ] [3m36s:0s] 2022/07/19 14:08:28 getVodUrl err: keTang.Token: 鉴权服务请求后台服务失败 2022/07/19 14:08:28 getVodUrl err: keTang.Token: 鉴权服务请求后台服务失败 [fps:135] downloading 视频教程学习.mp4 ... 11% [> ] [3s:27s]

我看了下,应该是因为你这个地方是有 ppt+源文件 有关,我尝试只下载视频,是能够正常下载的

HarryWang29 commented 2 years ago

后续区分下视频还是文件处理

D-en1997 commented 2 years ago

感谢大佬回复,我看了一下找到原因了,是我的账号没有下载权限,登录账号登录错了。

还有一个问题,下载速度挺慢的;清晰度好像不是最高的。 TencentKeTang > d -c 333016 [fps:144] downloading 0.1-如何学习ansys workbench.mp4 ... 99% [=============> ] [7m41s:3s] [fps:65] downloading 0.2-Ansys Workbench 平台模块介绍.mp4 ... 13% [> ] [3m0s:15m24s]

后续区分下视频还是文件处理

HarryWang29 commented 2 years ago

咦,这个视频好像是免费下载的吧,我自己的帐号也是可以看到的 关于清晰度的话,现在确实发现了有些问题,很奇妙,后面的版本会优化这个问题 On Jul 19, 2022, 4:42 PM +0800, D-en1997 @.***>, wrote:

感谢大佬回复,我看了一下找到原因了,是我的账号没有下载权限,登录账号登录错了。 还有一个问题,下载速度挺慢的;清晰度好像不是最高的。 TencentKeTang > d -c 333016 [fps:144] downloading 0.1-如何学习ansys workbench.mp4 ... 99% [=============> ] [7m41s:3s] [fps:65] downloading 0.2-Ansys Workbench 平台模块介绍.mp4 ... 13% [> ] [3m0s:15m24s] — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

D-en1997 commented 2 years ago

哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。

Kevin-HYX commented 2 years ago

现在免费的内容可以下载 付费的就不行(已经登录了付费过的账号) 期待后期版本

D-en1997 commented 2 years ago

现在免费的内容可以下载 付费的就不行(已经登录了付费过的账号) 期待后期版本

付费的也可以下载,我就是下载已购买课程

z3919367 commented 2 years ago

哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。

您好,请问一下是需要更换哪里的id呢,之前是可以直接下载的,现在确实是做了加密,请大佬告知一下......

HarryWang29 commented 2 years ago

我应该知道你们说的情况了,腾讯课堂在申请key的时候好像做了一个什么验证,在浏览器还有cookie是可以正常获取的,但是使用ffmpeg的话,就有问题了,目前新版本确实是解决了这个问题,你们可以试试看

On Jul 23, 2022, 11:38 AM +0800, z3919367 @.***>, wrote:

哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。 您好,请问一下是需要更换哪里的id呢,之前是可以直接下载的,下载确实是做了加密,请大佬告知一下...... — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

z3919367 commented 2 years ago

我应该知道你们说的情况了,腾讯课堂在申请key的时候好像做了一个什么验证,在浏览器还有cookie是可以正常获取的,但是使用ffmpeg的话,就有问题了,目前新版本确实是解决了这个问题,你们可以试试看 On Jul 23, 2022, 11:38 AM +0800, z3919367 @.>, wrote: > 哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。 您好,请问一下是需要更换哪里的id呢,之前是可以直接下载的,下载确实是做了加密,请大佬告知一下...... — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.>

啊?是这个工具的新版本吗?我还是不行啊,下载完合并的时候报错了 Invalid data found when processing input : exit status 1 报的这个错

HarryWang29 commented 2 years ago

是免费视频么?我试试看? On Jul 23, 2022, 11:55 AM +0800, z3919367 @.***>, wrote:

我应该知道你们说的情况了,腾讯课堂在申请key的时候好像做了一个什么验证,在浏览器还有cookie是可以正常获取的,但是使用ffmpeg的话,就有问题了,目前新版本确实是解决了这个问题,你们可以试试看 … On Jul 23, 2022, 11:38 AM +0800, z3919367 @.>, wrote: > 哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。 您好,请问一下是需要更换哪里的id呢,之前是可以直接下载的,下载确实是做了加密,请大佬告知一下...... — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.> 啊?是这个工具的新版本吗?我还是不行啊,下载完合并的时候报错了 Invalid data found when processing input : exit status 1 报的这个错 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

HarryWang29 commented 2 years ago

0.2.6的话,在Windows上是有问题的 0.2.7修复了Windows的问题 On Jul 23, 2022, 11:55 AM +0800, z3919367 @.***>, wrote:

我应该知道你们说的情况了,腾讯课堂在申请key的时候好像做了一个什么验证,在浏览器还有cookie是可以正常获取的,但是使用ffmpeg的话,就有问题了,目前新版本确实是解决了这个问题,你们可以试试看 … On Jul 23, 2022, 11:38 AM +0800, z3919367 @.>, wrote: > 哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。 您好,请问一下是需要更换哪里的id呢,之前是可以直接下载的,下载确实是做了加密,请大佬告知一下...... — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.> 啊?是这个工具的新版本吗?我还是不行啊,下载完合并的时候报错了 Invalid data found when processing input : exit status 1 报的这个错 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

z3919367 commented 2 years ago

0.2.6的话,在Windows上是有问题的 0.2.7修复了Windows的问题 On Jul 23, 2022, 11:55 AM +0800, z3919367 @.>, wrote: > 我应该知道你们说的情况了,腾讯课堂在申请key的时候好像做了一个什么验证,在浏览器还有cookie是可以正常获取的,但是使用ffmpeg的话,就有问题了,目前新版本确实是解决了这个问题,你们可以试试看 > … > On Jul 23, 2022, 11:38 AM +0800, z3919367 @.>, wrote: > 哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。 您好,请问一下是需要更换哪里的id呢,之前是可以直接下载的,下载确实是做了加密,请大佬告知一下...... — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.> 啊?是这个工具的新版本吗?我还是不行啊,下载完合并的时候报错了 Invalid data found when processing input : exit status 1 报的这个错 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.>

不是免费的....

z3919367 commented 2 years ago

0.2.6的话,在Windows上是有问题的 0.2.7修复了Windows的问题 On Jul 23, 2022, 11:55 AM +0800, z3919367 @.>, wrote: > 我应该知道你们说的情况了,腾讯课堂在申请key的时候好像做了一个什么验证,在浏览器还有cookie是可以正常获取的,但是使用ffmpeg的话,就有问题了,目前新版本确实是解决了这个问题,你们可以试试看 > … > On Jul 23, 2022, 11:38 AM +0800, z3919367 @.>, wrote: > 哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。 您好,请问一下是需要更换哪里的id呢,之前是可以直接下载的,下载确实是做了加密,请大佬告知一下...... — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.> 啊?是这个工具的新版本吗?我还是不行啊,下载完合并的时候报错了 Invalid data found when processing input : exit status 1 报的这个错 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.>

用的就是最新版的,上午才下的,下载完合并报的错

HarryWang29 commented 2 years ago

那就比较麻烦了,晚点我找朋友付费视频在看看吧 On Jul 23, 2022, 11:59 AM +0800, z3919367 @.***>, wrote:

0.2.6的话,在Windows上是有问题的 0.2.7修复了Windows的问题 … On Jul 23, 2022, 11:55 AM +0800, z3919367 @.>, wrote: > 我应该知道你们说的情况了,腾讯课堂在申请key的时候好像做了一个什么验证,在浏览器还有cookie是可以正常获取的,但是使用ffmpeg的话,就有问题了,目前新版本确实是解决了这个问题,你们可以试试看 > … > On Jul 23, 2022, 11:38 AM +0800, z3919367 @.>, wrote: > 哈哈 是免费的我找了测试的。 上个周腾讯做了点加密,m3u8需要更换id和下载实在是麻烦。 期待后期的版本。 您好,请问一下是需要更换哪里的id呢,之前是可以直接下载的,下载确实是做了加密,请大佬告知一下...... — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.> 啊?是这个工具的新版本吗?我还是不行啊,下载完合并的时候报错了 Invalid data found when processing input : exit status 1 报的这个错 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.> 不是免费的.... — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

Kevin-HYX commented 2 years ago

有的付费视频前面有“试听”内容 事实上,这些内容任何人都能下载 但是非试听内容就下不了了

Kevin-HYX commented 2 years ago

抓取cookie然后下载就显示 getVodUrl err: keTang.Token: 用户未登录 用微信登录然后下载就显示

2022/07/24 10:48:47 download err:ffmpeg.Do: probe: exec.Run: ffprobe version 4.4-essentials_build-www.gyan.dev Copyright (c) 2007-2021 the FFmpeg developers
  built with gcc 10.2.0 (Rev6, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      56. 70.100 / 56. 70.100
  libavcodec     58.134.100 / 58.134.100
  libavformat    58. 76.100 / 58. 76.100
  libavdevice    58. 13.100 / 58. 13.100
  libavfilter     7.110.100 /  7.110.100
  libswscale      5.  9.100 /  5.  9.100
  libswresample   3.  9.100 /  3.  9.100
  libpostproc    55.  9.100 / 55.  9.100
[hls @ 0000015cd5bc23c0] Skip ('#EXT-X-VERSION:3')
[hls @ 0000015cd5bc23c0] Opening 'https://ke.qq.com/cgi-bin/qcloud/get_dk?edk=CiAL7Cyd3tSI5jqjrJfQGNH6PXMbHcqEIx9w8EKZa***ehCO08TAChiaoOvUBCokOTMyNDg4YmItOWZjYS00MzFiLWJiYjItNjFmMDhjYjNlYmM3&fileId=387702301565438699&keySource=VodBuildInKMS&token=dWluPTE0NDExNTIzNTE3MzU2NTUzNztza2V5PTtwc2tleT07cGxza2V5PTtleHQ9O3VpZF90eXBlPTEwMTI7dWlkX29yaWdpbl91aWRfdHlw***T0yO3VpZF9vcmlnaW5fYXV0aF90eXBlPTA7Y2lkPTM0NTE0NjE7dGVybV9pZD0xMDM1ODgzODA7dm9kX3R5cGU9MDtwbGF0Zm9ybT0z' for reading
[hls @ 0000015cd5bc23c0] Opening 'crypto+https://1258712167.vod2.myqcloud.com/25121a6avodtransbj1258712167/2576f59b387702301565438699/drm/v.f30742_0.ts?start=0&end=567775&type=mpegts&exper=0&sign=46928ce2823d1559893f0561de5eb594&t=63044010&us=3230486193547951748' for reading
[hls @ 0000015cd5bc23c0] Opening 'crypto+https://1258712167.vod2.myqcloud.com/25121a6avodtransbj1258712167/2576f59b387702301565438699/drm/v.f30742_0.ts?start=567776&end=1140991&type=mpegts&exper=0&sign=46928ce2823d1559893f0561de5eb594&t=63044010&us=3230486193547951748' for reading
[hls @ 0000015cd5bc23c0] Error when loading first segment 'https://1258712167.vod2.myqcloud.com/25121a6avodtransbj1258712167/2576f59b387702301565438699/drm/v.f30742_0.ts?start=0&end=567775&type=mpegts&exper=0&sign=46928ce2823d1559893f0561de5eb594&t=63044010&us=3230486193547951748'
https://1258712167.vod2.myqcloud.com/25121a6avodtransbj1258712167/2576f59b387702301565438699/drm/voddrm.token.dWluPTE0NDExNTIzNTE3MzU2NTUzNztza2V5PTtwc2tleT07cGxza2V5PTtleHQ9O3VpZF90eXBlPTEwMTI7dWlkX29yaWdpbl91aWRfdHlwZT0yO3VpZF9vcmlnaW5fYXV0aF90eXBlPTA7Y2lkPTM0NTE0NjE7dGVybV9pZD0xMDM1ODgzODA7dm9kX3R5cGU9MDtwbGF0Zm9ybT0z.v.f30742.m3u8?t=63044010&exper=0&us=3230486193547951748&sign=46928ce2823d1559893f0561de5eb594: Invalid data found when processing input
: exit status 1

Skip下一行的链接用浏览器打开返回 {"msg":"用户未登录","retcode":200}

Kevin-HYX commented 2 years ago

关于cookie登录方式的问题,我找到了一些眉目,一下是打开‘debug’后的下载某付费视频的响应 版本为0.2.7

url:https://ke.qq.com/cgi-bin/qcloud/get_token?bkn=406332*81&fileId=38770**301565438699&t=0.595600&term_id=103588380, method:GET, header:map[Cookie:[{"result":{"uid":"14411*235173565537","role_type":64,"uid_type":1012,"role_info":0,"nick_name":"xxx","is_creator":0,"is_company":0,"is_default_nick":0,"face_url":"//thirdqq.qlogo.cn/g?b=sdk&k=kPHuVax0xsjRia7WCU**bFDLg&s=140&t=1586440045","is_login":1,"is_logout":0},"retcode":0}] Referer:[https://ke.qq.com/webcourse/index.html] User-Agent:[beegoServer]], reqBody:
url:https://ke.qq.com/cgi-bin/qcloud/get_token?bkn=406332881&fileId=3877023*1565438699&t=0.595600&term_id=103588380, method:GET, respBody:{"result":{"err_code":200,"err_msg":"用户未登录"},"retcode":0}
2022/07/24 11:13:12 getVodUrl err: keTang.Token: 用户未登录

这个内容应该很好复现,其中第二行的url应该是请求授权token的(如果我没猜错的话) 先在浏览器登录(重点),然后用浏览器打开该url,会响应(请允许我抹去关键数据)

{
  "result": {
    "sign": "180fdebde626340e*****dcc8ac7f9eb",
    "t": "630*49c1",
    "exper": 0,
    "us": "5640501405646**4579"
  },
  "retcode": 0
}

这应该是我们希望得到的数据 然后,我们进入浏览器设置界面,清除ke.qq.com的cookie,再打开url,响应:

{
  "result": {
    "err_code": 200,
    "err_msg": "用户未登录"
  },
  "retcode": 0
}

这就是app响应keTang.Token: 用户未登录的原因 那么可以得到一个重要信息:该url需要正确的cookie才能正确响应,显然这个cookie是正常登录的时候用js写进去的 我们只要把这个cookie搞出来加入GET请求就可以了 搞出cookie很简单,首先清除原有的cookie,正常登录,然后按F12输入: document.cookie 复制响应的字符串就行了 我在IDEA里已经测试过可行 image 下面这个请求可以响应正确的内容 接下来就看作者如何将cookie放入go语言中了 @HarryWang29

HarryWang29 commented 2 years ago

奇怪,我找时间看看,之前cookie这一套都是完善的,会不会是上次升级搞的?