如何使用 Python 开发一个【抖音视频下载神器】

国外有个在线网站,专门帮别人下载 YouTube 上面的视频,功能很简单直接,就是把你想要的 youtube 视频地址复制进去,然后点击 start 就可以下载视频:

不过,当你点击下载的时候,会跳转到一个广告页面,可真会玩,这个网站访问量贼大,站长每天不用干啥,坐等别人浏览广告实现躺着赚钱,真是舒服。

吓得小帅b赶紧撸起 Python,开发一个【抖音视频下载神器】来压压惊。‍

怎么实现的呢?那么,接下来就是:

学习 Python 的正确姿势

先来分析一波,在抖音中找到自己喜欢的视频,把链接复制出来,在浏览器访问:

可以看到它做了个重定向,打开 F12:

访问这个真实地址,再抓下包:

可以看到,这里访问:

iteminfo/?item_ids=xxx

可以得到一个 JSON 对象,往下翻可以看到一个播放地址:

访问一下这个地址:

哟,这视频不就来了嘛~

这视频链接看着有点玩味,把其中的 wm 去掉再访问:

神奇的水印居然消失了:

通过简单的分析,咱们就知道如何获取到原视频地址了。

那么接下来就开始撸代码了。

像这种简单的网页实现,我们可以使用 Flask,首先创建一个 Project,然后创建一个 templates 来存放静态网页。

在里面创建一个 index.html,使用 bootstrap 随便整一个网页结构:

接着我们创建一个 app.py,定义一下路由,当访问首页的时候,我们就把这个页面渲染一波:

运行起来:

看起来还有模有样的。

当用户点击提交的时候,我们让它去调用 download_video 方法:

这样就可以在 app.py 中获取用户传来的地址:

如何通过用户的地址获取到原视频地址呢?

因为用户复制的地址,直接请求的话会有一个重定向,所以首先得拿到重定向后的地址,可以这么做:

这样通过 req.url 就可以得到重定向后的地址:

而这个地址包含了 ID ,理论上只要拿到这个 ID,然后去访问我们刚抓到的 API 地址就可以得到 JSON:

通过正则把地址中的 ID 拿过来:

有了 ID 就可以请求地址,得到 JSON 数据:

这样就可以把原始视频地址解析出来:

得到原始视频地址了还不好说嘛,我们先创建一个目录,用来存放下载的视频:

ok,把视频下载下来,存放到这个目录,然后将路径返回:

这样就可以把得打的路径返回到前端:

在 HTML 中可以做一下判断,如果 video 有值,就显示出来:

运行一下看看,输入地址:

下载后视频来了:

本地打开,可以:

再来个表单校验:

这样有什么消息就可以在前端做一个提醒:

像这样:

OK,以上就是小帅b今天给你带来的思路分享,希望对你有所帮助,以上完整源码可以进入公众号发送 7 获取。

更多好玩:

你学习 Python 的时候,用到舒服姿势了么?2021-05-24

用 Python 开发一个 【聊天室】2020-06-17

用 Python 开发一个【视频营销号】生成器2020-04-21

如果你感兴趣,还可以跟着小帅b一起:通往「Python高手之路」

我们,下回见,peace!

(0)

相关推荐