程序技术好文:用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)


多线程:(在路上)


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


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

相关文章
|
21小时前
|
安全 API C语言
Python程序的安全逆向(关于我的OPENAI的APIkey是如何被盗的)
本文介绍了如何使用C语言编写一个简单的文件加解密程序,并讨论了如何为编译后的软件添加图标。此外,文章还探讨了Python的.pyc、.pyd等文件的原理,以及如何生成和使用.pyd文件来增强代码的安全性。通过视频和教程,作者详细讲解了生成.pyd文件的过程,并分享了逆向分析.pyd文件的方法。最后,文章提到可以通过定制Python解释器来进一步保护源代码。
21 6
|
13天前
|
IDE 程序员 开发工具
Python编程入门:打造你的第一个程序
迈出编程的第一步,就像在未知的海洋中航行。本文是你启航的指南针,带你了解Python这门语言的魅力所在,并手把手教你构建第一个属于自己的程序。从安装环境到编写代码,我们将一步步走过这段旅程。准备好了吗?让我们开始吧!
|
25天前
|
数据可视化 图形学 Python
在圆的外面画一个正方形:Python实现与技术解析
本文介绍了如何使用Python的`matplotlib`库绘制一个圆,并在其外部绘制一个正方形。通过计算正方形的边长和顶点坐标,实现了圆和正方形的精确对齐。代码示例详细展示了绘制过程,适合初学者学习和实践。
38 9
|
21天前
|
数据可视化 数据处理 Python
Python编程中的数据可视化技术
在Python编程中,数据可视化是一项强大的工具,它能够将复杂的数据集转化为易于理解的图形。本文将介绍如何使用matplotlib和pandas这两个流行的Python库来实现数据可视化,并展示一些实用的代码示例。通过这些示例,读者将学会如何创建各种图表,包括折线图、柱状图和散点图等,以便更好地理解和呈现数据。
|
26天前
|
开发者 Python
使用Python实现自动化邮件通知:当长时程序运行结束时
本文介绍了如何使用Python实现自动化邮件通知功能,当长时间运行的程序完成后自动发送邮件通知。主要内容包括:项目背景、设置SMTP服务、编写邮件发送函数、连接SMTP服务器、发送邮件及异常处理等步骤。通过这些步骤,可以有效提高工作效率,避免长时间等待程序结果。
55 9
|
20天前
|
监控 数据挖掘 数据安全/隐私保护
Python脚本:自动化下载视频的日志记录
Python脚本:自动化下载视频的日志记录
|
24天前
|
存储 人工智能 数据挖掘
Python编程入门:打造你的第一个程序
本文旨在为初学者提供Python编程的初步指导,通过介绍Python语言的基础概念、开发环境的搭建以及一个简单的代码示例,帮助读者快速入门。文章将引导你理解编程思维,学会如何编写、运行和调试Python代码,从而开启编程之旅。
36 2
|
26天前
|
Python
在Python中,`try...except`语句用于捕获和处理程序运行时的异常
在Python中,`try...except`语句用于捕获和处理程序运行时的异常
42 5
|
26天前
|
数据采集 JSON 数据格式
深入解析:使用Python爬取Bilibili视频
本文介绍了如何使用Python编写脚本自动化下载Bilibili视频。通过requests等库获取视频和音频URL,使用ffmpeg合并音视频文件,最终实现高效下载。注意遵守网站爬虫政策和法律法规。
176 4
|
25天前
|
存储 Python
Python编程入门:理解基础语法与编写简单程序
本文旨在为初学者提供一个关于如何开始使用Python编程语言的指南。我们将从安装Python环境开始,逐步介绍变量、数据类型、控制结构、函数和模块等基本概念。通过实例演示和练习,读者将学会如何编写简单的Python程序,并了解如何解决常见的编程问题。文章最后将提供一些资源,以供进一步学习和实践。
32 1