python - 如何让 python 为我的程序播放来自 youtube vid 的音频?
问题描述
所以目前我的程序目录中有一个 mp3 文件,我使用以下代码播放它:
from pygame import mixer # Load the popular external library
file = 'LinusAndLucy.mp3'
mixer.init()
mixer.music.load(file)
mixer.music.play()
它工作正常,但我不想用 mp3 文件将我的 python 文件传输到其他计算机,我宁愿它直接从我指定的 youtube url 流式传输音频。
这可能吗?我在这里阅读了与此类似的问题,但似乎没有一个可以解决问题(特别是这个)
解决方案
您可以使用youtube-dl ( pip install youtube-dl
)。
有关详细信息,请参阅有关嵌入的文档。
你最终会得到这样的东西:
import youtube_dl
url = 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'
filename = '/tmp/file.mp3' # where do you want to save the file?
ydl_opts = {
'format': 'bestaudio/best',
'outtmpl': filename,
'postprocessors': [{
'key': 'FFmpegExtractAudio',
'preferredcodec': 'mp3',
'preferredquality': '192'
}]
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download([url])
之后,您可以使用 pygame 播放下载的文件。
推荐阅读
- audio - 在 pygame 中使用声音会使我的游戏崩溃
- java - 如何从 csv 文件中读取特定范围并在 Java 中写入另一个 csv 文件?
- python - Python:计算器功能:
- python - 带有脏数据的特征工程
- javascript - 如何通过ajax将xml文件数据发送到Webmethod?
- iis - IIS 10 URL 将 http 流量重写为 https 重定向不起作用
- javascript - 在“动态”画布上绘图
- arduino - ESP32 上的 AsyncTCP 和带有 SOFTAP 的奇怪堆/套接字问题
- python - 为什么 json 似乎无法正确处理具有相当大数据的对象
- django - 不需要外键