百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 软件资讯 > 正文

一学就会的python视频音乐下载_用python播放音乐

ninehua 2025-02-19 13:21 45 浏览

最近想下载视频和音乐资源,但是却无法下载,这可苦恼了我。

于是我一通操作,找到了门路来实现视频和音乐的下载,下面跟着我操作吧!

主角就是you-get,通过python脚本来实现,并且通过GUI呈现,方便不会编程的人员。


you-get是开源的第三方库,支持视频、音乐、图片的下载,而且覆盖主流的网站,比如腾讯视频、哔哩哔哩、YouTube、酷狗、网易云等86+网站。


安装python


下载python安装包
https://www.python.org/ftp/python/3.9.6/python-3.9.6-amd64.exe

下载完成后,双击打开python安装包,先勾选添加环境变量“Add python 3.9 to PATH”,再点击选择安装位置“Customize installation”

继续点击“下一步”

选择安装的位置(默认也可以),再点击“Install”安装,之后等待安装完成即可。

验证一下是否安装ok!

按win+r,打开cmd窗口,并输入“python”

如果有python的相关信息,说明python安装完成。



you-get使用


在cmd窗口输入以下命令来安装you-get

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple you-get


查看视频画质及格式:-i

you-get -i https://v.qq.com/x/cover/mzc00200p29gosv/x0036gyn378.html


视频默认选项下载

you-get https://v.qq.com/x/cover/mzc00200p29gosv/x0036gyn378.html


设置输出路径和重命名文件:-o为设定输出路径,-O为重命名下载的视频

you-get -o E:\ -O 斗破 https://v.qq.com/x/cover/mzc00200p29gosv/x0036gyn378.html


在线观看视频:如果不想观看广告,可以使用播放器在线播放

you-get -p chromium https://v.qq.com/x/cover/mzc00200p29gosv/x0036gyn378.html


以上是在cmd窗口中的下载方法,下面附上可以在界面直接下载的python代码,大家可以作为参考

from tkinter import *
from tkinter import filedialog
from tkinter.scrolledtext import ScrolledText
from threading import Thread
from re import match
import tkinter.messagebox as msgbox
import sys
from you_get import common as you_get

top = Tk()
top.title("视频下载器--作者:笨熊")

# 获取屏幕尺寸以计算布局参数,使窗口居屏幕中央,其中width和height为界面宽和高
width = 700
height = 350
screenwidth = top.winfo_screenwidth()
screenheight = top.winfo_screenheight()
alignstr = '%dx%d+%d+%d' % (width, height, (screenwidth - width) / 2, (screenheight - height) / 2)
top.geometry(alignstr)

# 阻止窗口调整大小
top.resizable(0, 0)
# 设置窗口图标
top.iconbitmap(r"E:\pythonProject\az0bv-zfqt1-001.ico")

# 框架布局
frame_root = Frame(top)
frame_left = Frame(frame_root)
frame_right = Frame(frame_root)

frame_left.pack(side=LEFT)
frame_right.pack(side=LEFT, anchor=N)
frame_root.pack()

#输入视频链接
tip1= Label(frame_left, text='请输入视频链接',font = ('楷体',18))
tip1.pack(padx=10,anchor=W)
#视频链接输入框
input_url= Entry(frame_left,bg='#F7F3EC')
input_url.pack(ipadx=159,ipady=8,padx=20,anchor=W)

input_url_clear = Button(frame_left, text='清空', font=('楷体', 18), activebackground='gray', bd=5, bg='#da765b',command=_clear).pack(ipadx=80, padx=140, pady=38, anchor=W)

#请选择保存位置
tip2=Label(frame_left, text='\n请选择保存位置',font = ('楷体',18))
tip2.pack(padx=10,anchor=W)
#保存地址输入框
input_save_address= Entry(frame_left,bg='#F7F3EC')
input_save_address.pack(ipadx=159,ipady=8,padx=20,anchor=W)


# 浏览本地文件夹,选择保存位置
def browse_folder():
    # 浏览选择本地文件夹
    save_address = filedialog.askdirectory()
    # 把获得路径,插入保存地址输入框(即插入input_save_address输入框)
    input_save_address.insert(0, save_address)


# 下载函数
def download():
    # 从输入框获取视频链接
    url = input_url.get()
    # 从输入框获取保存地址
    save_address = input_save_address.get()
    cmd = f'you-get.exe -o {save_address} {url}'

    if match(r'^https?:/{2}\w.+$', url):
        if save_address != '':
            try:
                # stext.insert(END, '\n\n视频下载中......\n\n')
                sys.argv = ['you-get', '-o', save_address, url, ]
                you_get.main()
                # p = sub.Popen(cmd, stdout=sub.PIPE, stderr=sub.PIPE)

                # output,errors = p.communicate()
                # output = output.decode('UTF-8').strip().split()
                # for line in [f'视频:{output[14]}\n',f'文件大小:{" ".join(output[9:11])}\n\n']:
                #     stext.insert(END, line)
                # stext.insert(END, '视频下载完成!\n\n')
                # stext.insert(END, '='*60,'\n\n')
                msgbox.showinfo(title='Info', message='视频下载完成!')
                # 使滚动文本框的滚动条始终保持在最底段
                # stext.yview_moveto(1)
            except:
                # stext.insert(END, '\n\n该视频不支持下载!\n\n')
                # stext.insert(END, '=' * 60, '\n\n')
                msgbox.showerror(title='Error', message='该视频不支持下载!')
        else:
            # stext.insert(END, '\n\n视频保存地址错误!\n\n')
            # stext.insert(END, '=' * 60, '\n\n')
            msgbox.showerror(title='Error', message='视频保存地址错误!')
    else:
        # stext.insert(END, '\n\n视频链接错误!\n\n')
        # stext.insert(END, '=' * 60, '\n\n')
        msgbox.showerror(title='Error', message='视频链接错误!')


# 为避免在下载时tkinter界面卡死,创建线程函数
def thread_it(func, *args):
    # 创建
    t = Thread(target=func, args=args)
    # 守护 !!!
    t.setDaemon(True)
    # 启动
    t.start()


# “浏览文件夹”按钮
browse_folder_button = Button(frame_right, text='浏览', font=('楷体', 15), activebackground='gray', bd=5, bg='#da765b',
                              command=lambda: thread_it(browse_folder)).pack(ipadx=30, pady=140, side=LEFT,
                                                                             anchor=SE)
# 新建空白标签,无实际作用,内容为空,为了让界面对称,更美观,可理解为“占位符”
# Label(frame_right, text='  ').pack(pady=223, padx=13,side=LEFT, anchor=W)

# “下载”按钮
download_button = Button(frame_left, text='下载', font=('楷体', 18), activebackground='gray', bd=5, bg='#da765b',
                         command=lambda: thread_it(download)).pack(ipadx=80, padx=140, pady=38, anchor=W)

# ScrolledText组件(滚动文本框)
# stext = ScrolledText(frame_left, width=60, height=23, background='#F7F3EC')
# stext.pack(padx=20, anchor=W)

top.mainloop()


支持的网站


网站

URL

视频?

图像?

音频?

YouTube

https://www.youtube.com/

?



Twitter

https://twitter.com/

?

?


VK

欢迎来到 VK | VK

?



Vine

https://vine.co/

?



Vimeo

https://vimeo.com/

?



Vidto

vidto.me

?



Veoh

http://www.veoh.com/

?



Tumblr

https://www.tumblr.com/

?

?

?

TED

TED: Ideas Worth Spreading

?



SoundCloud

https://soundcloud.com/



?

Pinterest

https://www.pinterest.com/


?


MusicPlayOn

http://en.musicplayon.com/

?



MTV81

MTV Japan

?



Mixcloud

https://www.mixcloud.com/



?

Metacafe

VideosHub | Popular Internet Videos

?



Magisto

Online Video Editor | Smart Video Maker by Magisto

?



Khan Academy

Khan Academy | Free Online Courses, Lessons & Practice

?



JPopsuki TV

http://www.jpopsuki.tv/

?



Internet Archive

https://archive.org/

?



Instagram

https://instagram.com/

?

?


Heavy Music Archive

ιlιlι Heavy Music Archive



?

Google+

https://plus.google.com/

?

?


Freesound

http://www.freesound.org/



?

Flickr

https://www.flickr.com/

?

?


Facebook

https://www.facebook.com/

?



eHow

http://www.ehow.com/

?



Dailymotion

http://www.dailymotion.com/

?



CBS

CBS TV Network Primetime, Daytime, Late Night and Classic Television Shows

?



Bandcamp

http://bandcamp.com/



?

AliveThai

http://alive.in.th/

?



interest.me

NO.1 K??? ??, ???? tvN

?



755
ナナゴーゴー

新感覚SNS | 755

?

?


niconico
ニコニコ動画

http://www.nicovideo.jp/

?



163
网易视频
网易云音乐

网易直播
网易云音乐

?


?

56网

56视频首页

?



AcFun

http://www.acfun.tv/

?



Baidu
百度贴吧

百度贴吧——全球领先的中文社区

?

?


爆米花网

爆米花网--爆出精彩视界

?



bilibili
哔哩哔哩

哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

?



Dilidili

http://www.dilidili.com/

?



豆瓣

豆瓣



?

斗鱼

斗鱼 - 每个人的直播平台

?



凤凰视频

凤凰视频首页-最具媒体价值的视频门户-凤凰网

?



风行网

风行-新一代平台

?



iQIYI
爱奇艺

爱奇艺-在线视频网站-海量正版高清视频在线观看

?



激动网

激动网

?



酷6网

酷6网

?



酷狗音乐

酷狗音乐 - 就是歌多!小说相声也很多!



?

酷我音乐

酷我音乐-无损音质正版在线试听网站



?

乐视网

http://www.letv.com/

?



荔枝FM

有声小说相声评书脱口秀广播剧听书直播FM-荔枝



?

秒拍

http://www.miaopai.com/

?



MioMio弹幕网

http://www.miomio.tv/

?



痞客邦

https://www.pixnet.net/

?



PPTV聚力

首页

?



齐鲁网

山东网络台_齐鲁网_山东广播电视台主办

?



QQ
腾讯视频

腾讯视频 - 中国领先的在线视频媒体平台,海量高清视频在线观看

?



阡陌视频

http://qianmo.com/

?



Sina
新浪视频
微博秒拍视频

新浪视频_高清视频在线观看_新浪网
http://video.weibo.com/

?



Sohu
搜狐视频

搜狐视频-中国领先的综合视频网站,正版高清视频在线观看,原创视频上传,全网视频搜索

?



天天动听

http://www.dongting.com/



?

Tudou
土豆

http://www.tudou.com/

?



虾米

音螺·数字音乐新场景



?

阳光卫视

http://www.isuntv.com/

?



音悦Tai

音悦Tai-看好音乐

?



Youku
优酷

http://www.youku.com/

?



战旗TV

在线直播_全部游戏直播_网络游戏直播 - 战旗直播

?



央视网

China Central Television

?



相关推荐

不要随便给别人的iPhone刷机,否则后果会很严重

一网友称自己也算一个果粉,并且也使用iPhone多年,最近虽然看到网上有很多人给iPhone刷机的时候导致错误代码,变成白苹果,但是还是肆无忌惮的帮老板娘给iPhone刷机了!心想一部好好的iPhon...

iphone6白苹果重启、刷机报错4005维修实记

【机器型号】:iPhone6【故障现象】:刷机报错4005【客户描述】:机器摔过后开机白苹果重启,刷机报错4005【维修过程】:客户发过来的是单板,硬盘已经焊过,码片位置也飞过线。如图:接上外壳刷机,...

iPhone、iPad刷机报错是什么原因?详见苹果刷机报错代码大全

无论是借助iTunes或其它工具给iPhone、iPad刷机,都可能遇到失败报错的情况,失败报错会有代码提示。如下图中的“发生未知错误(9)”,9是指什么意思?是属于什么原因?对于专业维修人员可能很清...

技术文:iPhone 刷机报错 53 详解及维修方法

指纹电路关联的各个模块:1:指纹模块(也就是HOME键排线):上面有指纹识别块(HOME键蓝宝石玻璃)、排线、指纹处理芯片。2:指纹连接排线:连接指纹模块到主板的接口3:指纹接口4:指纹验证码片:就是...

闲鱼22元入手WiFi6无线网卡,20厘米长天线+双频900M

我自用的小主机是攒出来的,机箱是2012年买的立人NC2007B,随后十多年只换主板不换机箱,目前是H110M主板+I7-6700处理器,一直都使用USB外置无线网卡。上周我在狗东7.9元买了WiFi...

IObit Driver Booster Pro 专业驱动软件

软件介绍DriverBooster是一款针对Windows操作系统的电脑的驱动程序更新工具。更新驱动可以有效地提升电脑硬件性能,减少系统崩溃降低硬件冲突。该驱动加速器软件可以通过智能的检测引擎有效识...

制作Win10系统安装盘和Win系统的安装

制作Win10系统安装盘和Win系统的安装重要提示:操作之前准备工作必须看一下1.准备8G或8G以上U盘(32G以内)。制作系统U盘会格式化U盘内所有文件,建议准备一个新U盘,或者U盘文件拷贝到其他文...

Win10专业版无线网络老是掉线的问题

有一位电脑基地的用户,使用win10专业版系统笔记本电脑的时候,总是出现无线网卡掉线的问题,这该怎么办呢?接下来,技术员小编就来分享具体的解决方法。Win10专业版下无线总是掉线,可能是由电源管理设...

ESXI安装OpenWRT+群晖NAS+Win,打造AIO,附硬盘+网卡直通教程

开篇碎碎念Hi,大家好,今天来打造一个全能小主机,通过ESXI虚拟机为底层,在此基础上安装OpenWRT软路由+群晖NAS+Windows/linux系统,软路由负责上网,NAS负责文件存储,Wind...

如何在Windows上安装.NET Framework 详细教程分享

.NETFramework是Microsoft推出的一套开发平台,主要用于Windows操作系统上的应用程序开发和运行。许多软件和游戏需要安装特定版本的.NETFramework才能正常运行。...

Win10不和无线网卡好好玩耍!部分Win7/Win8.1用户很忧伤

IT之家讯硬件兼容问题一直困扰着一些Win7/Win8.1用户,因为这很影响他们和Win10好好玩耍。尤其是一些关键硬件,比如显卡和网卡如果有问题,基本上就意味着堵死了升级的道路,除非有合适的驱动更...

直接安装Windows 10 v20H2原版纯净系统教程(附下载地址)

软件简介:软件【下载地址】获取方式见文末。注:推荐使用,更贴合此安装方法!想要无痛升级您的电脑系统至Windows10吗?我们提供了一个简便的解决方案,适合能正常开机的电脑,无需制作启动U盘。此方案...

电脑网卡坏了怎么修复(电脑网卡坏了怎么修复win7系统)

当电脑网卡出现故障时,无论是有线网络还是无线网络,都可能无法正常连接。下面从软件、硬件等方面,分步骤为你介绍排查与修复的解决方案。一、初步排查:锁定问题源头检查网络环境将手机、平板等其他设备连接至同一...

自已封装的Windows10(仅供学习)(自己封装系统)

前段时间封装一个纯净版的Window10LTSC,除了带Office2016、极点输入法和万能五笔外,无任何其它三方软件,也没有浏览器主页挟持,真正意义上的纯净版系统。(春节后会出系统封装专题)这...

如何安装设置无线网卡(非免驱版)?

使用无线网卡,可以将您的台式机连接到无线网络,就像笔记本、手机一样,无需使用网线连接。本文介绍无线网卡的安装及使用方法。安装网卡之前,请确认电脑光盘驱动可以正常使用,同时准备好网卡安装光盘。注意:若无...