需求: 作为(伪)资深视频爱好者,在YouTube上有时候在看到一个好看的视频(小姐姐),内心OS:好想把视频(小姐姐)加入到那些年我们下载过的视频(小姐姐)系列中,怎么办?在线等挺急的!
实现:
方案一:
百度之后,呵呵哒,无非是下插件或者借助第三方网站去下,优点是小白也能做,缺点是慢慢慢!在时间就是金钱,时间就是生命的当下这简直是谋财害命!不能忍,弃之!
方案二:
毛主席说过自己动手丰衣足食,荀子老人家说过,君子性非异也,善假于物也。 好吧,我们自己动手。 又有众多大佬说过,人生苦短,我用pyhon。
python最大的好处是拥有大量现成的轮子可以用,减少了不必要的开发。 而作为一名半吊子而又有原则的技术渣,秉着能别人动手尽量不自己来的原则,开始了折腾。
首先,我们来到全球著名的同性交友网站gayhub,搜索关键字youtube
,看到如图:
, 哇哇哇,有30多K的star,相信群众的眼睛都是雪亮的,就是它了。
说干就干,点击进入之后,发现作者提供了完整详细的说明文档,并且给出了不同的开发环境下的给的不同方法,而win环境在安装了pip
后只需要执行`pip install --upgrade youtube-dl这条命令即可。
在安装之后,我们就可以小试牛刀了,在命令行模式下执行如图:
就可以看到视频在下载了。
完工。
嗯?并没有
需求变更:我想只需要输入视频链接就可以下载该咋办?
其实这个很简单,加入用户交互就行了嘛
先贴效果图:
再上主要代码:
#! /usr/bin/env python3
# -*- coding:utf-8 -*-
#use youtube-dl download video
from __future__ import unicode_literals
import youtube_dl
video_url = input('please input a youtube video link:')
ydl_opts = {'proxy':'socks5://127.0.0.1:1080','format':'bestvideo[ext=mp4]'}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download([video_url])
print('end')
好了,现在才算正式完工。
说明:
ydl_opts参数
format`意思是下载画质最清晰的的并且将格式转成mp4,具体别的参数选项可以看源项目的说明。pip install --upgrade youtube-dl
将该库更新。youtube
,还能下载youku
等其他视频网站的视频。pip
替换成pip3
.