you-get是github上python的一个开源库(https://github.com/soimort/you-get),使用you-get你只需要取得视频所在网页链接地址就可以很轻松的下载下来,目前you-get所支持的网站包含国内外几十个网站(youtube、twitter、腾讯、爱奇艺、优酷、bilibili等),基本上可以满足你的需求。

1.you-get可以直接通过命令行使用(前提是你要先安装you-get:pip install you-get)

下载命令:you-get  your-url

l例如:you-get  https://www.bilibili.com/bangumi/play/ep118488?from=search&seid=5050973611974373611

效果如下:(我直接在pycharm的终端命令行执行)

2.通过python 简单调用you-get库

# !/usr/bin/env python
# -*-coding:utf-8-*-
"""
@Author  : xiaofeng
@Time    : 2018/12/25 10:26
@Desc : Less interests,More interest.
@Project : python_appliction
@FileName: you-get.py
@Software: PyCharm
@Blog    :https://blog.csdn.net/zwx19921215
"""
import sys
import you_getdef download(url, path):sys.argv = ['you-get', '-o', path, url]you_get.main()if __name__ == '__main__':# 视频网站的地址url = 'https://www.bilibili.com/bangumi/play/ep118488?from=search&seid=5050973611974373611'# 视频输出的位置path = 'G:/test'download(url, path)

3.python 简单集成 tkinter,通过GUI的形式展现(单线程,未做优化,后续做优化处理)

# !/usr/bin/env python
# -*-coding:utf-8-*-
"""
@Author  : xiaofeng
@Time    : 2018/12/25 11:50
@Desc : Less interests,More interest.
@Project : python_appliction
@FileName: you-get2.py
@Software: PyCharm
@Blog    :https://blog.csdn.net/zwx19921215
"""import re
import sys
import tkinter as tk
import tkinter.messagebox as msgbox
import webbrowserimport you_get"""
视频下载类
"""class DownloadApp:# constructdef __init__(self, width=800, height=200):self.w = widthself.h = heightself.title = '视频下载助手'self.root = tk.Tk(className=self.title)self.url = tk.StringVar()self.start = tk.IntVar()self.end = tk.IntVar()self.path = tk.StringVar()self.path.set('D:/DownloadApp')# define frameframe_1 = tk.Frame(self.root)frame_2 = tk.Frame(self.root)frame_3 = tk.Frame(self.root)frame_4 = tk.Frame(self.root)# menumenu = tk.Menu(self.root)self.root.config(menu=menu)menu1 = tk.Menu(menu, tearoff=0)menu.add_cascade(label='Menu', menu=menu1)menu1.add_command(label='about me', command=lambda: webbrowser.open('https://blog.csdn.net/zwx19921215'))menu1.add_command(label='exit', command=lambda: self.root.quit())# set frame_1label1 = tk.Label(frame_1, text='请输入视频链接:')entry_url = tk.Entry(frame_1, textvariable=self.url, highlightcolor='Fuchsia', highlightthickness=1, width=35)# set frame_2s_lable = tk.Label(frame_2, text='起始值:')e_lable = tk.Label(frame_2, text='结束值:')start = tk.Entry(frame_2, textvariable=self.start, highlightcolor='Fuchsia', highlightthickness=1, width=10)end = tk.Entry(frame_2, textvariable=self.end, highlightcolor='Fuchsia', highlightthickness=1, width=10)# set frame_3label2 = tk.Label(frame_3, text='请输入视频输出地址:')entry_path = tk.Entry(frame_3, textvariable=self.path, highlightcolor='Fuchsia', highlightthickness=1, width=35)down = tk.Button(frame_3, text='下载', font=('楷体', 12), fg='green', width=3, height=-1,command=self.video_download)# set frame_4label_desc = tk.Label(frame_4, fg='black', font=('楷体', 12),text='\n注意:支持youtube、twitter、腾讯、爱奇艺、优酷、bilibili等大部分主流网站视频下载、图片下载!')label_warning = tk.Label(frame_4, fg='blue', font=('楷体', 12), text='\nauthor:xiaofeng')# layoutframe_1.pack()frame_2.pack()frame_3.pack()frame_4.pack()label1.grid(row=0, column=0)entry_url.grid(row=0, column=1)s_lable.grid(row=1, column=0)start.grid(row=1, column=1)e_lable.grid(row=1, column=2)end.grid(row=1, column=3)label2.grid(row=2, column=0)entry_path.grid(row=2, column=1)down.grid(row=2, column=2, ipadx=20)label_desc.grid(row=3, column=0)label_warning.grid(row=4, column=0)"""视频下载"""def video_download(self):# 正则表达是判定是否为合法链接url = self.url.get()path = self.path.get()if re.match(r'^https?:/{2}\w.+$', url):if path != '':msgbox.showwarning(title='警告', message='下载过程中窗口如果出现短暂卡顿说明文件正在下载中!')try:sys.argv = ['you-get', '-o', path, url]you_get.main()except Exception as e:print(e)msgbox.showerror(title='error', message=e)msgbox.showinfo(title='info', message='下载完成!')else:msgbox.showerror(title='error', message='输出地址错误!')else:msgbox.showerror(title='error', message='视频地址错误!')def center(self):ws = self.root.winfo_screenwidth()hs = self.root.winfo_screenheight()x = int((ws / 2) - (self.w / 2))y = int((hs / 2) - (self.h / 2))self.root.geometry('{}x{}+{}+{}'.format(self.w, self.h, x, y))def event(self):self.root.resizable(False, False)self.center()self.root.mainloop()if __name__ == '__main__':app = DownloadApp()app.event()

注:由于视频窗口是单线程,所以下载过程会一直卡顿(是正常的,因为处于下载中,下载完后会恢复),后续将会优化

python 视频下载神器(you-get)相关推荐

  1. python 视频下载神器(you-get) 的安装和用法

    0x01 安装 pip3 install you-get $ pip3 install --upgrade you-get 命令行输入you-get 如果有以下回显说明安装成功 0x02 用法 Usa ...

  2. python下载神器_python 视频下载神器(you-get)的具体使用

    you-get是github上python的一个开源库(https://github.com/soimort/you-get),使用you-get你只需要取得视频所在网页链接地址就可以很轻松的下载下来 ...

  3. 如何使用 Python 开发一个【抖音视频下载神器】

    国外有个在线网站,专门帮别人下载 YouTube 上面的视频,功能很简单直接,就是把你想要的 youtube 视频地址复制进去,然后点击 start 就可以下载视频: 不过,当你点击下载的时候,会跳转 ...

  4. Python视频编辑神器:全面分析ffmpeg-python库的安装与使用方法

    Python视频编辑神器:全面分析ffmpeg-python库的安装与使用方法 在Python中进行视频编辑是一件令人兴奋的事情,它能够让你深入了解和控制你想要的任何一帧视频.而在Python视频编辑 ...

  5. Dailymotion 视频下载神器,喜欢太阳的后裔的人有福了!

    有很多网站支持在线下载,例如:  telechargerunevideo ,savevideo 等等,但是今天要介绍是超速浏览器插件(支持火狐和chrome):savefrom.net 插件下载地址: ...

  6. 视频下载神器you-get使用方法

    0 背景 还在为视频下载而烦恼吗?作为一名新时代农民工,代码就是最好的工具.推荐一款视频下载神器 you-get,只需要一个命令行,就可以下载到你想要的视频,不需要下载其他乱七八糟的工具, 项目地址: ...

  7. bilibili视频下载神器[无广告]

    一.前言 ​ 最近群里有小伙伴问我bilibili视频如何下载,当然目前下载的方法网上有很多,但是习惯使然,我一般只介绍我信得过的软件以及广告很少的软件,也就是追求最简洁的页面以及最强大的功能,因此这 ...

  8. YT Saver(网页视频下载软件)官方中文版32位V4.6.0 | 网页万能视频下载神器

    YT Saver Video Downloader 是一款集视频下载器和格式转换器于一体的专业网页视频下载软件,从包括Facebook.Instagram.Dailymotion.TikTok.Ok. ...

  9. gui卡顿 python_视频下载神器(youget),在 Python 中怎么使用?

    点击上方 小张Python,加为星标 第一时间收到 Python 技术干货! 作者:朝畫夕拾 链接:https://www.jianshu.com/p/c5ee7960b728 来源:简书 you-g ...

最新文章

  1. 细粒度情感分析:还在用各种花式GNN?或许只用RoBERTa就够了
  2. 献给新手的深度学习综述
  3. 具体数学第二版第三章习题(2)
  4. 【原】ASP.Net WebForm的发布(图解)
  5. 第215天:Angular---指令
  6. Linux系统管理01
  7. 【数学建模】种群竞争模型(最优化)
  8. web安全----xss工具使用3
  9. Javascript实现AES加密解密(ECB/CBC)
  10. oracle8ir2,Oracle8iR2(oracle8.1.6)在redhat linux 7.1上的简易安装方法
  11. java 二分法查找排序,插入排序,折半查找算法
  12. 关于最新上映电影的评论
  13. php 多级分成手机版,PHP 层级菜单数组处理,由一级数组转换为多级数组的递归实现...
  14. seaJS 模块加载过程分析
  15. 新手学习selenium路线图(老司机亲手绘制)-学前篇
  16. Nero 软件各种组件简单介绍
  17. LDC 1.14.0 发布,高性能 dlang 编译器
  18. 入魂一番赏android,入魂一番赏APP
  19. resultful 风格
  20. vite2+vue3打包后浏览器打开跨域浏览器的错误

热门文章

  1. java-根据url生成二维码
  2. html表格整体左移动,js操作table统制tr jquery 两个table左右移动
  3. eu.org免费域名白嫖教程以及避坑
  4. win10我的电脑右键管理错误
  5. 达梦8上安装ODBC
  6. 渐变矩形c语言代码,C#绘制渐变矩形代码
  7. 修复软件图标变白的方法
  8. 主机名和域名之间的区别
  9. python读取股票数据_如何利用程序(如python) 从新浪财经或者雅虎财经获取到所有A股数据(历史日线数据,实时股票数据)?...
  10. Android4.2.2的Stagefright中编解码器数据流的维护