废话不多说,直接看步骤吧,很简单。
第一步获取我们想要解析的视频url比如:https://v.qq.com/x/cover/mzc0020027yzd9e/c0046u15fgd.html
我们需要获取到url中的 c0046u15fgd js简单正则获取
url.match(/\/(\w+?)\.html/)?.[1]
第二步 请求腾讯的接口获取视频的源地址 https://vv.video.qq.com/getinfo?vids=c0046u15fgd&platform=101001&charge=0&otype=json vids字段值就是我们第一步获取的字符,获取到的结果看下图
第三步 正则提取关键内容拼接url ,示例为js其他语言也类似。
let fn = res.match(/”fn”:”([^”]+)”/)?.[1]
let fvkey = res.match(/”fvkey”:”([^”]+)”/)?.[1]
let source = res.matchAll(/”url”:”(https?:\/\/\d{1,3}(\.\d{1,3}){3}[^”]+)”/g)
我上面source获取了所有匹配的url,第一个链接好像都是只有3分钟左右的,所以你们看情况自己出处理一下,
源地址 = url + fn + ‘?vkey=’ + fvkey
代码见下图
开始我以为所有视频都能拿到,但试了一下,有些视频还是获取不到的,[泪]但也能解析大部分了。
示例代码:https://mi.carole.top/demo.txt
实战:在线解析示例:http://mi.carole.top/jx?url=https://v.qq.com/x/cover/mzc0020027yzd9e/c0046u15fgd.html
获取到的原视频url都是没有开启ssl的,所以上面地址不要使用https。
大家有更好的方法,可以共享出来。[玫瑰]