在pytube中显示进度

问题描述 投票:2回答:1
import pytube
def video_downloader():

    vid_url=str(input("Enter Video URL: "))
    print('Connecting, Please wait...')
    video=pytube.YouTube(vid_url)
    Streams=video.streams
    File_name=input('File Name:')
    Format=input('Audio Or Video :')

    if Format=='Audio':
        Filter=Streams.get_audio_only(subtype='mp4')
    if Format=='Video':
        Filter=Streams.get_highest_resolution()
    print('Now downloading:',video.title)
    sizer=round(Filter.filesize/1000000)
    print('Size:',sizer,'MB')


    Filter.download(filename=str(File_name))
    print('Done!')
video_downloader()

这是我最近做的一个使用pytube从youtube下载视频和音频文件的脚本,但我很难尝试添加一个函数或其他东西来向用户显示下载的进度,即:1%完成2%完成等等。)

python web-scraping progress-bar pytube
1个回答
0
投票

这是我第一次回答,错误之处请见谅。

阅读Pytube文档,大家可能会发现,pytube有 这个 选项已经作为进度条实现,您将需要调用 on_progress_callback 在您的YouTube对象中。

from pytube.cli import on_progress
from pytube import YouTube

yt = YouTube(video_url, on_progress_callback=on_progress)
yt.download()
© www.soinside.com 2019 - 2024. All rights reserved.