将 youtube-dl cmd 命令转换为 python 脚本
convert youtube-dl cmd command to python script
据我所知,有两种方法可以使用 youtube-dl
将 sound.webm
转换为 sound.mp3
第一种方法我试过用ffmpeg
转换声音:
class MyLogger(object):
def debug(self, msg):
pass
def warning(self, msg):
pass
def error(self, msg):
print(msg)
def my_hook(d):
if d['status'] == 'finished':
print('Done downloading, now converting ...')
def download_sound(url):
ydl_opts = {
'format': 'bestaudio/best[height=360]',
'postprocessors': [{
'key': 'FFmpegExtractAudio',
'preferredcodec': 'mp3',
'preferredquality': '192',
}],
'logger': MyLogger(),
'progress_hooks': [my_hook],
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['https://youtu.be/A_WzVVndUCY])
文件大小为 8mb
。
第二种方法:
url = 'https://youtu.be/A_WzVVndUCY'
command = ['youtube-dl', '-x', '--audio-format', 'mp3', f'{url}']
文件大小 = 4mb
.
所以第二种方法对我来说更好,但我的问题是如何将此 cmd 命令 youtube-dl -x --audio-format mp3 $url
转换为 python 脚本,就像我提到的第一种方法一样。
您可以轻松地将 youtube-dl 嵌入为:
import youtube_dl
ydl_opts = {}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['https://www.youtube.com/watch?v=BaW_jenozKc'])
检查 here 以获得更多选项。
据我所知,有两种方法可以使用 youtube-dl
将sound.webm
转换为 sound.mp3
第一种方法我试过用ffmpeg
转换声音:
class MyLogger(object):
def debug(self, msg):
pass
def warning(self, msg):
pass
def error(self, msg):
print(msg)
def my_hook(d):
if d['status'] == 'finished':
print('Done downloading, now converting ...')
def download_sound(url):
ydl_opts = {
'format': 'bestaudio/best[height=360]',
'postprocessors': [{
'key': 'FFmpegExtractAudio',
'preferredcodec': 'mp3',
'preferredquality': '192',
}],
'logger': MyLogger(),
'progress_hooks': [my_hook],
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['https://youtu.be/A_WzVVndUCY])
文件大小为 8mb
。
第二种方法:
url = 'https://youtu.be/A_WzVVndUCY'
command = ['youtube-dl', '-x', '--audio-format', 'mp3', f'{url}']
文件大小 = 4mb
.
所以第二种方法对我来说更好,但我的问题是如何将此 cmd 命令 youtube-dl -x --audio-format mp3 $url
转换为 python 脚本,就像我提到的第一种方法一样。
您可以轻松地将 youtube-dl 嵌入为:
import youtube_dl
ydl_opts = {}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['https://www.youtube.com/watch?v=BaW_jenozKc'])
检查 here 以获得更多选项。