这个方法比直接用浏览器插件逼格高点

1. 简介

需要用到 pytube 这个第三方库:https://github.com/nficano/pytube 这里只是把这个页面捡重要部分翻译了一下。

pytube 有如下特色:

1. 它是 python 的一个轻量级库,不需要依赖第三方库,因此十分可靠

2. 允许程序员选择下载视频的分辨率

3. pipelining easy, 你可以为不同的下载事件指定不同的回调函数

4. 包含命令行工具,可以直接从终端下载视频

2. 安装

pip install pytube

3. 库的使用

from pytube import YouTube

# pprint-pretty print 不必要,仅仅为了让输出更好看,每个视频文件占一行
from pprint import pprint yt = YouTube("http://www.youtube.com/watch?v=Ik-RsDGPI5Y") # 显示所有可以下载的视频文件
pprint(yt.get_videos()) # 显示视频文件名
print(yt.filename) # 设置视频文件名
yt.set_filename('myFirstVideo') # 根据文件类型过滤视频文件
pprint(yt.filter('flv')) # 由于排序是按清晰度从低到高,所以可以用 -1 索引到最高清版本
print(yt.filter('.mp4')[-1]) # 根据清晰度过滤文件
pprint(yt.filter(resolution='480p')) # 通过文件类型和清晰度指定下载的视频
video = yt.get('mp4','720p') # 如果有多个相同类型,或者相同清晰度的文件,则不能仅指定一种格式来下载视频,例如下面一行可能会报错:
video = yt.get('mp4') # 其实,上面的 video 完全可以用过滤+索引的方式获得,不一定非得用 get 方法
video = yt.filter('.mp4')[-1] # 下载到指定路径
video.download('/home/Desktop')

4. 命令行工具的使用

传入参数 -e (或者 --extension=)来设置下载的文件类型

$ pytube -e mp4 https://www.youtube.com/watch?v=hMPBSwexqG8

传入 -r 设定清晰度

$ pytube -r 720p https://www.youtube.com/watch?v=hMPBSwexqG8

传入 -p 设置保存路径

$ pytube -r 720p -p ~/Downloads/ https://www.youtube.com/watch?v=hMPBSwexqG8

传入 -f 设置保存名称

$ pytube -e mp4 -f liangjian https://www.youtube.com/watch?v=hMPBSwexqG8

同时设置下载的类型和清晰度

$ pytube -e mp4 -r 720p https://www.youtube.com/watch?v=hMPBSwexqG8

用 pytube 爬取 youtube 视频的更多相关文章

  1. python爬取youtube视频 多线程 非中文自动翻译

    声明:我写的所有文章都是发在博客园的,我看到其他复制粘贴过去的 连个出处也不写,直接打上自己的水印...真是没的说了. 前言:前段时间搞了一些爬视频的项目,代码都写好了,这里写文章那就在来重新分析一遍 ...

  2. 【Python爬虫案例学习2】python多线程爬取youtube视频

    转载:https://www.cnblogs.com/binglansky/p/8534544.html 开发环境: python2.7 + win10 开始先说一下,访问youtube需要那啥的,请 ...

  3. nodejs爬虫笔记(三)---爬取YouTube网站上的视频信息

    思路:通过笔记(二)中代理的设置,已经可以对YouTube的信息进行爬取了,这几天想着爬取网站下的视频信息.通过分析YouTube,发现可以从订阅号入手,先选择几个订阅号,然后爬取订阅号里面的视频分类 ...

  4. Python3 多线程爬取梨视频

    多线程爬取梨视频 from threading import Thread import requests import re # 访问链接 def access_page(url): respons ...

  5. python爬取豆瓣视频信息代码

    目录 一:代码 二:结果如下(部分例子)   这里是爬取豆瓣视频信息,用pyquery库(jquery的python库). 一:代码 from urllib.request import quote ...

  6. requests爬取梨视频主页所有视频

    爬取梨视频步骤: 1.爬取梨视频主页,获取主页所有的详情页链接 - url: https://www.pearvideo.com/ - 1) 往url发送请求,获取主页的html文本 - 2) 解析并 ...

  7. python爬虫实践——爬取“梨视频”

    一.爬虫的基本过程: 1.发送请求(请求库:request,selenium) 2.获取响应数据()服务器返回 3.解析并提取数据(解析库:re,BeautifulSoup,Xpath) 4.保存数据 ...

  8. 使用requests爬取梨视频、bilibili视频、汽车之家,bs4遍历文档树、搜索文档树,css选择器

    今日内容概要 使用requests爬取梨视频 requests+bs4爬取汽车之家 bs4遍历文档树 bs4搜索文档树 css选择器 内容详细 1.使用requests爬取梨视频 # 模拟发送http ...

  9. python爬取快手视频 多线程下载

    就是为了兴趣才搞的这个,ok 废话不多说 直接开始. 环境: python 2.7 + win10 工具:fiddler postman 安卓模拟器 首先,打开fiddler,fiddler作为htt ...

随机推荐

  1. PHP的后期静态绑定

    self 是个孝子 不管后来 谁是它的领导(调用它)  谁生了它  它就听谁的 子类调用父类的方法 self 的生存空间是父类 不管是不是子类调用 我生在哪 我就在哪个类里面找属性/方法 static ...

  2. http调接口

    private static String doGetResult(String urlStr, Map<String, String> params) throws Exception ...

  3. 初学Scala

    由于项目的需要接触了Scala语言,也花了一些时间来了解和学习Scala,今天对学习的Scala进行一个小的总结. 1.What is Scala? Scala的官方网站上给出的解释是: Scala ...

  4. jquery checkbox实例

    <!DOCTYPE html><html> <head><meta charset="utf-8" /><title>& ...

  5. python 类、对象、方法、属性

    在python中,一个对象的特征也称为属性(attribute).它所具有的行为也称为方法(method) 结论:对象=属性+方法 在python中,把具有相同属性和方法的对象归为一个类(class) ...

  6. 怎么利用javascript删除字符串中的最后一个字符呢?

    程序员就是每天在各种代码下不停的调试,世界买家网最近遇到了烦心事,是什么事情呢? 需求是一个字符串,想删除这个字符串最后一个字符,比如“1,2,3,4,5,”,删除最后一个“,”用javascript ...

  7. 对vector<int>进行快速排序

    #include <iostream>#include <string>#include <vector>using namespace std;void Quic ...

  8. 微信Auth2.0授权的时候出现两次回调

    在获取用户OpenID的时候 $url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".WX_APPID. ...

  9. 什么是java?

    Java是一种软件技术  是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言  是一种为 Internet发展的计算机语言  是一种使网页(Web Page) ...

  10. Eclipse快捷键 10个最有用的快捷键

    Eclipse中10个最有用的快捷键组合 一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代码,使得整体的开发效率和质量得到提升. 1. ...