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

学习python的正确姿势

共 1119字,需浏览 3分钟

 · 2020-04-22


之前小帅b在网上看到一个营销号文案生成器,把我给乐的:



d970793b4e1e1793bd02f2cb63605021.webp





其实这个用 Python 实现非常简单,根据用户输入的内容,简单替换一下关键字就可以了,我随手写了一下生成方法:




13ea9ea0457266169820548571db0706.webp




调用一波:


7d215159cce1445995289e954c4bda8c.webp




是不是老小编了?但是这样还不够好玩,我们直接用 Python 整成一个彻底的营销号视频,把生成的营销文案转为语音,通过主体关键词去网上扒一些相关的图片,再把它们合成视频输出,那才叫一个酸爽啊。



f3f4f9603d2ed4a7056b8c543958dbe5.webp




那么如何使用 Python 实现一个视频营销号生成器呢?接下来就是:


学习 Python 的正确姿势

eedb3c6d13acb7e12eb0bebce569e27d.webp




首先,我们接收到输入的主体关键词:


57fa3f3f9f76638ec5c9fceaf1ee4da7.webp




拿到关键词的时候,开一个线程去百度搜索下载相关的图片:


55a4a2a0b3ef5808ea21e73c2e3899b5.webp




可以先到百度图片那里搜索一下,获取请求的 URL 和 解析规则,我们先来百度图片里面搜一下罗永浩吧:


d4fbf446a7182f77dac0a53d4d8b814a.webp




可以看到请求的地址是:

http://image.baidu.com/search/index?tn=baiduimage&ps=1&ct=201326592&lm=-1&cl=2&nc=1&ie=utf-8&word=(要搜索的关键词)

打开控制面板,重新请求一下,可以看到图片的具体地址:


3b05ec42d82161fa466204c9ef56b74e.webp




根据图片的地址信息,我们去第一个请求搜一下:


a291bce57132b1dee650f37fa6d975c4.webp





可以发现,每个图片的具体地址都定义在了 ObjURL 之下,那么可以通过 re 对它进行匹配。

根据关键词获取图片下载地址列表:


f2be758a0e7fc2d2200ec9eb6aeb3d95.webp




开始下载图片:


7749a5f4cfd96194cfd4d2a2fb0bba73.webp





这里就先下载前 14 张图就好了,毕竟营销号嘛~



20d833a3cededd1902ca59b6521ad2ae.webp





下载图片的线程就让它去跑吧,我们继续把刚刚收到的关键词生成文案:




923f8008ab77e33ad0fd81082ba72f0f.webp




调用它:




0fa8328eb8e59f44835a74e08e4823da.webp




拿到营销文案之后,让它发声:




09df558da72b334ccbff2fbff042d450.webp




还记得当时的 Niubility 么?我们还是用那个好骚的声音:




f57528e27903ef45341ba33814dd53de.webp





我们先来运行一波看看效果:




087eb23f5a1436105997dab6d1f0d9b3.webp




可以看到老罗的图片给扒下来了:




d2af174d0be2e3c3d9d084ca40b730fc.webp




再来听听生成的营销声音:





恩恩,有点内味了!





fc3c00a4a87894c0341057c464e8b2f9.webp




现在图片也有了,音频也有了,接下来就是合成视频了。



不过有一点,如果到时图片还没下载完,就去合成视频,岂不是 GG?所以最好先 join 一下线程:




8827248715cbc1c1175bcb379df18cfd.webp




将我们刚刚下载的图片合成一个视频,可以用下 opencv 的 write 方法:




b473b29d1c34b3b212b40e9caf9afee5.webp




简单说下这段代码吧:



这里是通过文件夹获取我们刚刚下载的所有图片地址:




f26314fb2862726f2b1771c4e1f959cd.webp




这里定义了我们要合成的视频属性,比如帧数,视频像素等,其中我设置的 0.3 主要是让视频不要太快:




f4b5001b405976e1dc8f86c3a62a1083.webp




最后将每张图片都写进去:




d3b65f2541722f28db7b9c90a7ab625c.webp




那么,最后还要把刚刚生成的音频加入到视频中去,可以用下 FFmpeg:




9d011254beda6a2842b12f64565232fd.webp




这样,我们得到的 output.mp4 就是我们想要的营销号视频了,来执行一波:




92663f949ac38b01ccb95913ffbd664c.webp




ok,这时候当前目录下就会有这个视频了:




2d5ceffe3872225fac9189f2ab2ef022.webp




打开看看吧:







哈哈哈,也许加个 BGM 更有味,我好像突然发现了什么商机了,我们下回见,peace!




点击留言

peace!




浏览 20
点赞
评论
收藏
分享

手机扫一扫分享

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

手机扫一扫分享

举报