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

学习python的正确姿势

共 1383字,需浏览 3分钟

 ·

2021-06-02 20:51


国外有个在线网站,专门帮别人下载 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!

浏览 40
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报