快手视频解析下载,思路和原理小记
所属分类:网站建设 | 发布于 2022-08-31 09:11:21
前言
想要下载快手上某个博主的视频,发现网上提供的在线下载,要么收费,要么已经失效。
网上搜了一下,发现自己实现一个好像不是很难,那咱就自己写一个。
实践
经过两个晚上的奋斗,终于完成了快手视频的解析下载。
废话咱不讲,直接上演示地址:https://tool.wenge365.com/videoParse/kuaishou.html
思路和原理
这里记录下思路和原理。
这类视频下载功能的原理基本上都是用户输入视频链接,程序通过分析链接地址的页面,找到视频真实的url地址,然后再保存到本地的。
快手的视频链接分为两类:
1:在手机上从快手app右下角三个点那里的复制链接得到的链接地址,格式如:https://v.kuaishou.com/vl27Ib,这种是快手视频的短链接。
2. 从pc网页端打开的视频,这时的链接地址格式是这样的,https://www.kuaishou.com/short-video/3xistxjg5gffrms?authorId=3xg2kebvbc5qfa6&...
实现过程
1. 经过分析,短链接https://v.kuaishou.com/vl27Ib这种格式的链接首先会经过两次302重定向,就会跳转到https://www.kuaishou.com/short-video/3xistxjg5gffrms?authorId=3xg2kebvbc5qfa6&...这样的链接地址。
2. 短视频两次302重定向后的地址和pc端复制出来的地址格式是一样的,我们只需要对这种格式进行处理就可以了。
3. 重点就是要抓取分析https://www.kuaishou.com/short-video/3xistxjg5gffrms这种页面,请求这个页面的时候需要携带cookie,否则无法抓取。这里程序稍微处理一下就可以了。
4. 抓取页面后分析得到,真实的视频相关的信息都定义在window.__APOLLO_STATE__这个js对象里面,把它提取出来分析一下就能得到真实的视频地址、视频封面、作者id、作者名称等等信息了。