我做了一个youtube视频下载管理器。它下载了一个视频,但当我下载同一个视频时,我面临一个问题,它不会再下载。我怎样才能用相同的标题(如pic.png)再次下载它并发送pic1.png。我该怎么做
def Download(self):
video_url = self.lineEdit.text()
save_location = self.lineEdit_2.text()
if video_url == '' or save_location == '':
QMessageBox.warning(self, "Data Error", "Provide a Valid Video URL or save Location")
else:
video = pafy.new(video_url)
video_stream = video.streams
video_quality = self.comboBox.currentIndex()
download = video_stream[video_quality].download(filepath=save_location, callback=self.Handel_Progress, )
好的,这个很有趣
真正的问题从这里开始
这里,您正在调用
video_stream
对象的download
函数,该函数将filepath
作为文件位置的参数,但不使用文件名,因为显然,文件将以实际名称保存问题的根本原因:
现在是部分,您如何确保它下载,无论是什么:
您需要做两件事:
检查是否存在同名文件,如果存在,则在文件名末尾的扩展名之前添加
1
。因此,如果存在abc.mp4
,则保存abc1.mp4
。 [我将告诉您当abc.mp4
、abc1.mp4
等存在时如何处理该场景,但现在,让我们回到问题上来。]如何将文件名(
abc1.mp4
)传递给下载方法下面的代码将处理这两个问题。 我添加了一些评论供您理解
如果您遇到任何问题,请告诉我
相关问题 更多 >
编程相关推荐