Python 脚本仅下载 url 列表中的第一个视频
Python script only downloads the first video from the url list
我制作了一个 python 脚本来使用 youtube-dl 下载一些视频。当我 运行 脚本时,它会下载第一个视频,然后继续打印已为所有其他视频下载的视频。
这是脚本:
import re , os
formula = re.compile(r'https.+')
os.chdir('/home/ubuntu/Desktop/TO MASTER THIS VACATION')
urls = []
with open('Python necessary videos.txt' , 'r') as f:
for line in f:
mo = formula.findall(line)
if mo:
urls.append(mo[0])
cmd = 'youtube-dl -f 22 '
for i in urls:
print("Video url : "+str(i))
cmd = cmd + str(i)
os.system(cmd)
我做错了什么??
P.S.
因为被要求分享"Python necessary videos.txt"的一些台词。在这里,我分享其中的几行...
Python教程1
https://youtu.be/*$!@&_
Python教程2
https://youtu.be/@#@$>?
请注意,我在这里更改了原始网址。
cmd = cmd + str(i)
您不断向命令附加新的 URL,因此在第一次迭代中您调用了
youtube-dl -f 22 url1
并在下一次迭代中
youtube-dl -f 22 url1 url2
等等。
您应该为基本命令使用不同的变量名称,以便每次都创建新的 cmd
,而不是重复使用以前的 URL。
例如:
base_cmd = 'youtube-dl -f 22 '
# ...
cmd = base_cmd + str(i)
我制作了一个 python 脚本来使用 youtube-dl 下载一些视频。当我 运行 脚本时,它会下载第一个视频,然后继续打印已为所有其他视频下载的视频。
这是脚本:
import re , os
formula = re.compile(r'https.+')
os.chdir('/home/ubuntu/Desktop/TO MASTER THIS VACATION')
urls = []
with open('Python necessary videos.txt' , 'r') as f:
for line in f:
mo = formula.findall(line)
if mo:
urls.append(mo[0])
cmd = 'youtube-dl -f 22 '
for i in urls:
print("Video url : "+str(i))
cmd = cmd + str(i)
os.system(cmd)
我做错了什么??
P.S.
因为被要求分享"Python necessary videos.txt"的一些台词。在这里,我分享其中的几行...
Python教程1 https://youtu.be/*$!@&_
Python教程2 https://youtu.be/@#@$>?
请注意,我在这里更改了原始网址。
cmd = cmd + str(i)
您不断向命令附加新的 URL,因此在第一次迭代中您调用了
youtube-dl -f 22 url1
并在下一次迭代中
youtube-dl -f 22 url1 url2
等等。
您应该为基本命令使用不同的变量名称,以便每次都创建新的 cmd
,而不是重复使用以前的 URL。
例如:
base_cmd = 'youtube-dl -f 22 '
# ...
cmd = base_cmd + str(i)