程序技术好文:用Python撸点视频背景音乐素材

简介: 程序技术好文:用Python撸点视频背景音乐素材

最近疫情,被关烦了,禁足得快发霉了。然后也在学习视频剪辑,视频剪辑需要大量的背景音乐素材,总不能自己唱吧,于是想着网络上撸一些。某度了一下,什么某fine和某音悦试听了下,音频里都有万恶的广告,果断放弃,有时间再去撸他们的。今天某子办公的音乐素材。找到//代码效果参考:http://www.lyjsj.net.cn/wx/art_24081.html

音效配乐栏目,打开开发者工具开始查找。

随便找一首试听,开发者工具-网络-media,可以清楚得看到音频的源文件地址。通过查找源文件地址的某些字符串的时候,发现并没有json数据地址,音频的源文件地址全部渲染在网页文本中并且类似于:那就简单了。开始构造代码。


单线程:


1 # -- encoding: utf-8 --


2 # @Time: 2022/4/28 10:53


3 # @Author: 、一叶孤城


4 # @File: yespik.py


5 # @IDE: PyCharm


6 # @Motto: ABC(Always Be Coding)


7


8 import concurrent.futures


9 import random


10 import re


11 import time


12 import requests


13 import os


14


15 def get_response(page_url):


16 # 一个获取网页文本的函数


17 headers = {


18 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36',


19 }


20 response = requests.get(url=page_url, headers=headers) # 响应


21 response.raise_for_status() # 排错


22 response.encoding = response.apparent_encoding //代码效果参考:http://www.lyjsj.net.cn/wz/art_24079.html

# 自动识别编码

23 response.encoding = 'utf-8' # 重置编码


24 return response # 返回响应,因为有text和content的内容需要在后面调用,所以只返回响应


25


26 def save_media(media_real_url, media_title):


27 # 先创建文件夹


28 filePath = './视频剪辑音频文件/' # 在当前文档的目录下创建一个文件夹


29 if not os.path.exists(filePath):


30 os.mkdir(filePath) # 创建文件夹


31


32 media_content = requests.get(url=media_real_url).content # 请求音频数据


33 format_name = media_real_url.split('.')【-1】 # 取到后缀名


34 # 做个判定吧,一般是有的


35 if media_content:


36 # 如果有数据,就尝试保存


37 # 开始保存


38 try:


39 with open(filePath + media_title + '.' + format_name, mode='wb') as f:


40 f.write(media_content)


41 print(f'--正在保存{media_title},请稍等!')


42 except:


43 print('有异常,请检查!')


44 else:


45 print('没有content数据!')


46


47 def parse_page(url):


48 # 解析列表页的函数


49 media_page_data = get_response(page_url=url).text # 获取列表页面的文本


50 # 音频数据范例:


51 # 所以提取音频数据只需要从网页文本数据中用正则提取上面的内容就ok了


52 media_lists = re.findall('src="//(.?)" type="', media_page_data)


53 # 标题也用正则来提取


54 media_titles = re.findall('(.?) ', media_page_data)


55 media_datas = zip(media_lists, media_titles)


56


57 for media_url, media_title in media_datas:


58 # 构造播放地址的url


59 media_real_url //代码效果参考:http://www.lyjsj.net.cn/wz/art_24077.html

= '' + media_url

60 print(media_real_url, media_title, sep = ' | ')


61 save_media(media_real_url, media_title)


62


63 def main(url):


64 # 主函数


65 parse_page(url)


66


67 if name == "main":


68 app = concurrent.futures.ThreadPoolExecutor(max_workers=10)


69 # 开始分页


70 for page in range(1, 30+1):


71 time.sleep(random.uniform(2, 5)) # 随机休眠


72 if page == 1:


73 url = ''


74 else:


75 url = f''


76 print(f'----------**开始采集第{page}页数据*----------')


77 main(url)


多线程:(在路上)


程序运行截图和保存结果截图:


申明:本文仅供学习和交流使用,如有侵权,请联系我删除。

相关文章
|
1天前
|
前端开发 搜索推荐 编译器
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
|
9天前
|
数据采集 存储 缓存
如何使用缓存技术提升Python爬虫效率
如何使用缓存技术提升Python爬虫效率
|
19天前
|
安全 API C语言
Python程序的安全逆向(关于我的OPENAI的APIkey是如何被盗的)
本文介绍了如何使用C语言编写一个简单的文件加解密程序,并讨论了如何为编译后的软件添加图标。此外,文章还探讨了Python的.pyc、.pyd等文件的原理,以及如何生成和使用.pyd文件来增强代码的安全性。通过视频和教程,作者详细讲解了生成.pyd文件的过程,并分享了逆向分析.pyd文件的方法。最后,文章提到可以通过定制Python解释器来进一步保护源代码。
62 6
|
17天前
|
分布式计算 大数据 数据处理
技术评测:MaxCompute MaxFrame——阿里云自研分布式计算框架的Python编程接口
随着大数据和人工智能技术的发展,数据处理的需求日益增长。阿里云推出的MaxCompute MaxFrame(简称“MaxFrame”)是一个专为Python开发者设计的分布式计算框架,它不仅支持Python编程接口,还能直接利用MaxCompute的云原生大数据计算资源和服务。本文将通过一系列最佳实践测评,探讨MaxFrame在分布式Pandas处理以及大语言模型数据处理场景中的表现,并分析其在实际工作中的应用潜力。
53 2
|
1月前
|
IDE 程序员 开发工具
Python编程入门:打造你的第一个程序
迈出编程的第一步,就像在未知的海洋中航行。本文是你启航的指南针,带你了解Python这门语言的魅力所在,并手把手教你构建第一个属于自己的程序。从安装环境到编写代码,我们将一步步走过这段旅程。准备好了吗?让我们开始吧!
|
13天前
|
Shell 开发工具 Python
如何在vim里直接运行python程序
如何在vim里直接运行python程序
|
2月前
|
数据可视化 数据处理 Python
Python编程中的数据可视化技术
在Python编程中,数据可视化是一项强大的工具,它能够将复杂的数据集转化为易于理解的图形。本文将介绍如何使用matplotlib和pandas这两个流行的Python库来实现数据可视化,并展示一些实用的代码示例。通过这些示例,读者将学会如何创建各种图表,包括折线图、柱状图和散点图等,以便更好地理解和呈现数据。
|
2月前
|
监控 数据挖掘 数据安全/隐私保护
Python脚本:自动化下载视频的日志记录
Python脚本:自动化下载视频的日志记录
|
2月前
|
存储 人工智能 数据挖掘
Python编程入门:打造你的第一个程序
本文旨在为初学者提供Python编程的初步指导,通过介绍Python语言的基础概念、开发环境的搭建以及一个简单的代码示例,帮助读者快速入门。文章将引导你理解编程思维,学会如何编写、运行和调试Python代码,从而开启编程之旅。
48 2
|
2月前
|
存储 Python
Python编程入门:理解基础语法与编写简单程序
本文旨在为初学者提供一个关于如何开始使用Python编程语言的指南。我们将从安装Python环境开始,逐步介绍变量、数据类型、控制结构、函数和模块等基本概念。通过实例演示和练习,读者将学会如何编写简单的Python程序,并了解如何解决常见的编程问题。文章最后将提供一些资源,以供进一步学习和实践。
47 1