某音无水印视频如何下载?我教你!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/sergiojune/article/details/100306575

距离上次搞定某音的字体反爬已经过去很久了,没看过的可以戳这里看看小白也可以看会的破解抖音字体反爬,当时由于技术原因想获取分享页的视频的,弄不了,后来技术跟上了,也变懒了,一放下就大半年过去了。现在决定重新搞下,废话不多说,直接上网址。

要解析无水印的视频,需要在手机端的个人主页 -> 左上角 -> 以链接的形式分享,这样你会得到类似于这样的链接:http://v.douyin.com/NT5Nck/在 PC 端打开就会自动重定向到这个链接:https://www.iesdouyin.com/share/user/88445518961?timestamp=1548046967

image

往下拉你就会看到她发表的所有视频了,这些视频就是我们想要的无水印视频。接下来就是熟悉的一步,打开开发者工具,寻找我们想要的请求。很容易就找到我们想要的请求

image

里面两个可能需要加密的参数,还是老办法,先直接搜索这个需要加密的参数名字:_signature,很容易就找到这个地方

image

直接下断点  刷新网页,你会看到这个

image

很明显就看到我们想要的两个参数都在这里了,往上寻找他们的生成方式即可。再查看右边的函数调用栈,很轻松就可以看到 signature 参数的生成方式

image

再往下一个函数调用栈,也可以看到 dytk 的参数,是直接在请求个人主页返回的,不需要加密,这样子就只剩下 signature 参数需要搞了。

image

现在重新下断点,直接下在 signature 生成的地方,这样方便查看相关函数。

image

现在临到看 _bytedAcrawler 这个对象怎么生成的了,这里很容易就可以找到它的生成位置

image

可以看到是一个 require 方法,请求一个文件相关的,但是把鼠标放在这个方法上,并不是我们想到的那个方法,而是他们重写的方法

image

直接点击进去看即可,接下来就是点击让代码运行下一步,直接跳到我们刚刚看到的函数。

image

这里看到还需要用到这两个函数,都是小意思

image

image

这个对象生成了,基本就完成了,最后加密需要用到的参数就是 视频主页的 id, 这个好办,大功告成。

将需要的代码扣下来之后,直接使用 python 的第三方库 pyexecjs 运行,会有这个错误

image

TypeError: Cannot read property 'userAgent' of undefined这个问题好办,因为 pyexecjs 的引擎是 v8,不支持 dom 的,所以自己构建一个 dom 对象即可。像这样就可以搞定了:

image

现在代码是可以生成我们想要的参数了,但是有时还是得不到数据,群里一大佬说是还需要一个 tac 变量,在这里:

image

也是在请求个人主页就可以得到,直接使用正则就可以获取,效果图

image

监于只是练手,里面可能还需要很多别的浏览器的变量没有调试出来,如果有需要的话可以自行调试。另代码已上传到github:https://github.com/SergioJune/Spider-Crack-JS说明:目前mou音在 PC 端是看不了视频的了,但是在移动端是可以的,所以找出了视频链接,把请求头改成这样就可以了

image

效果图

image

公众号很久没有原创更新了,因为最近有点事,现在开学了,时间也开始多了起来,所以现在重新开始更新原创,尽量每周更新两篇文章,文章不局限于逆向,量级爬虫,框架学习和 Python 基础,希望大家喜欢,另外有建议也可以在留言区提出来,让大家一起变好!

扫码查看更多文章

image

猜你喜欢

转载自blog.csdn.net/sergiojune/article/details/100306575