【随笔】yt-dlp使用cookie完成身份认证 python yt-dlp库常用参数

文章目录

  • 一、提取cookies
    • 1.1 不提取出来
    • 1.2 提取为单独文件
    • 1.2 使用cookies
  • 二、yt-dlp 用法(python库)
      • 基本参数
      • 视频参数
      • 播放列表参数
      • 高级参数

以前用yt-dlp做的软件:
在这里插入图片描述

但是部分网站需要在登录状态才能获取更高格式的内容。

比如(本文使用的是我的视频):该网站需要携带身份信息才能获取高质量格式
在这里插入图片描述

某些网站是不用的:

yt-dlp -F https://www.youtube.com/watch?v=7H7cTSml5zk

在这里插入图片描述

一种身份认证方式是使用用户名+密码的方式,另一种是携带cookie

我倾向于使用cookie。(本文以Windows为例)

Cookie(HTTP Cookie)是一个小型的文本文件,由网站服务器发送给用户浏览器,然后由浏览器存储在用户的计算机上。它是由网站创建的,包含着网站的一些数据,这些数据是在用户访问网站时保存在用户本地的。

一、提取cookies

首先需要你在浏览器中登录对应的网站(你要下载视频的网站)。

1.1 不提取出来

使用 --cookies-from-browser 参数,例如:

 yt-dlp --cookies-from-browser edge -F https://www.bilibili.com/video/BV1Mu4y1P7kz?t=5.0

在这里插入图片描述

注意:

  1. 你在什么浏览器登录,后面就写什么浏览器的名字,比如chrome、edge、fierfox。
  2. yt-dlp使用的是C:\Users\14134\AppData\Local\Google\Chrome\User Data\Default\Network\Cookies这个文件(以chrome为例)。只需要指定浏览器名称即可,不用写具体路径。
  3. Cookies这个文件不能同时被多个进程使用,使用yt-dlp时,需要关闭对应的浏览器,去任务管理器关闭这个浏览器的所有相关任务,否则会报错权限不足。

1.2 提取为单独文件

为了方便,可以把cookie提取出来,以后使用提取的cookie文件即可。注意不要泄露提取后的cookie文件

使用:

yt-dlp --cookies-from-browser chrome --cookies 2.txt

该命令会提取chrome浏览器中所有的cookie保存到2.txt文件中。 不要泄露cookie,某些网站通过修改cookie等操作就能登录到你的账号。 (比如一个有名的刷题网站)

1.2 使用cookies

使用提取出的cookie文件来获取视频,如:

yt-dlp --cookies 2.txt -F https://www.bilibili.com/video/BV1Mu4y1P7kz?t=5.0

在这里插入图片描述
8K:
在这里插入图片描述


下面是凑字数的。

二、yt-dlp 用法(python库)

基础用法:

import yt_dlp

url = '视频或音频的URL'
ydl_opts = {}

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    ydl.download([url])


参数配置:

基本参数

  1. format: 指定下载的格式。可以是一个格式字符串,比如 'bestvideo+bestaudio/best',也可以是格式码,比如 '137+140'
  2. outtmpl: 指定输出文件名模板。可以包含 %() 的占位符,如 %(title)s.%(ext)s
  3. quiet: 静默模式,不显示下载信息。
  4. no_warnings: 禁用警告信息的显示。
  5. ratelimit: 限制下载速度,单位为字节每秒。
  6. proxy: 设置代理,如 'http://your_proxy_server:port'

视频参数

  1. writesubtitles: 下载视频的字幕。
  2. writeautomaticsub: 下载自动生成的字幕。
  3. allsubtitles: 下载所有可用的字幕。
  4. subtitleslangs: 指定下载的字幕语言,如 ['en', 'zh']
  5. thumbnail: 下载视频的缩略图。
  6. writeinfojson: 下载视频的信息为 JSON 文件。

播放列表参数

  1. extract_flat: 将播放列表中的所有视频平铺下载。
  2. playliststart: 指定下载的播放列表的起始位置。
  3. playlistend: 指定下载的播放列表的结束位置。

高级参数

  1. ignoreerrors: 忽略下载错误,继续下载其他视频。
  2. postprocessors: 后处理器,可以用来转换视频格式等。
  3. keepvideo: 保留视频文件。
  4. max_downloads: 最大下载数量。
  5. noplaylist: 不下载播放列表,即使是单个视频。
  6. nooverwrites: 不覆盖已经存在的文件。
  7. writethumbnail: 将缩略图写入视频文件。

例如:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/433424.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

dolphinscheduler试用(一)(边用边修bug。。。。create tenant error)

(作者:陈玓玏) 前提:部署好了dolphinscheduler,部署篇见https://blog.csdn.net/weixin_39750084/article/details/136306890?spm1001.2014.3001.5501 官方文档见:https://dolphinscheduler.apache.org/…

数据结构(二)——线性表

二、线性表 2.1线性表的定义和基本操作 2.1.1 线性表的基本概念 线性表:是具有相同数据类型的 n 个数据元素的有限序列。(Eg:所有的整数按递增次序排列,不是顺序表,因为所有的整数是无限的)其中n为表长,当n0时线性表是一个空表…

将ppt里的视频导出来

将ppt的后缀从pptx改为zip 找到【media】里面有存放图片和音频以及视频,看文件名后缀可以找到,mp4的即为视频,直接复制粘贴到桌面即可。 关闭压缩软件把ppt后缀改回,不影响ppt正常使用。

2023年全球AI服务器市场占有率

关注卢松松,会经常给你分享一些我的经验和观点。 AI服务器是高端产品,全球都缺高端AI芯片,最近集邦咨询发布了2023 年全球 AI 服务器市场占有率的市场报告。 排名第一的是浪潮,第二名是戴尔、第三名是HPE(慧与也跟惠普有关)、第…

各种业务场景调用API代理的API接口教程

API代理的API接口在各种业务场景中具有广泛的应用,本文将介绍哪些业务场景可以使用API代理的API接口,并提供详细的调用教程和代码演示,同时,我们还将讨论在不同场景下使用API代理的API接口所带来的好处。 哪些业务场景可以使用API…

Qt ini配置文件

ini文件用于保存用户的设置操作,下列以背景颜色设置为例子 暂时默认设置为白色背景 这段代码放置在主窗口的构造函数中,用于初始化读取ini文件 QString color;QSettings *set new QSettings("color.ini",QSettings::IniFormat);set->begi…

泰迪智能科技-2024年高校大数据人才培养探索模式

随着数字经济的高速发展,对于大数据人才的需求日益增长。产业数字化和数字产业化之间的关系,已经成为推动社会发展的关键。为此,高校及产业界需要紧密配合,以培养出符合时代需求的大数据人才。 数字产业化与产业数字化高速发…

C++_程序流程结构_跳转语句_break

break 作用 用于跳出选择结构或循环结构 break使用的时机 出现在switch条件语句中,作用是终止case并跳出switch出现在循环语句中,作用是跳出当前的循环语句出现在嵌套循环中,跳出最近的内层循环语句 示例1 示例2 示例3

入门指南:使用uni-app构建跨平台应用

入门指南:使用uni-app构建跨平台应用 🌟 前言 欢迎来到我的小天地,这里是我记录技术点滴、分享学习心得的地方。📚 🛠️ 技能清单 编程语言:Java、C、C、Python、Go前端技术:Jquery、Vue.js、R…

【MySQL】数据库的操作(1)

【MySQL】数据库的操作(1) 目录 【MySQL】数据库的操作(1)创建数据库数据库的编码集和校验集查看系统默认字符集以及校验规则查看数据库支持的字符集查看数据库支持的字符集校验规则校验规则对数据库的影响数据库的删除 数据库的备…

【Leetcode每日一题】 前缀和 - 和为 K 的子数组(难度⭐)(29)

1. 题目解析 题目链接:560. 和为 K 的子数组 这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。 核心在于计算题目所给数组是否存在连续子数组和为指定值,存在返回连续子数组个数即可,不存在返回0即…

C++基础2:C++基本数据类型和控制结构

此专栏为移动机器人知识体系下的编程语言中的 C {\rm C} C从入门到深入的专栏,参考书籍:《深入浅出 C {\rm C} C》(马晓锐)和《从 C {\rm C} C到 C {\rm C} C精通面向对象编程》(曾凡锋等)。 2.C基本数据类型和控制结构 2.1 C基本数据类型 程序是由算法…

HarmonyOS NEXT应用开发——Navigation开发 页面切换场景范例

简介 在应用开发时,我们常常遇到,需要在应用内多页面跳转场景时中使用Navigation导航组件做统一的页面跳转管理,它提供了一系列属性方法来设置页面的标题栏、工具栏以及菜单栏的各种展示样式。除此之外还拥有动态加载,navPathSta…

2024年最新Android大厂面试笔试题分享,大厂面试题汇总

随着互联网的发展,大众对程序员这个职业有了更多的了解,除了高薪工资之外,压力太大,黑白颠倒,作息不规律等等,也是身为一个程序员必须经历的事情。 大部分程序员都是安静的、稳重的,有什么问题…

算法简单试题

一、选择题 01.一个算法应该是( B ). A.程序 B.问题求解步骤的描述 C.要满足五个基本特性 D.A和C 02.某算法的时间复杂度为O(n),则表示该…

探索AntDB:数据驱动时代的引擎

AntDB的发展道路一直如一条平稳而高效的航线,其升级过程始终是经过细致策划与多方验证。每一次的版本更新,都蕴含着团队的心血和智慧,保障系统的稳定与性能。AntDB在高速发展的同时,始终不忘稳扎稳打,为用户提供最优质…

基于java的宠物常规护理知识管理系统

项目源码:https://gitee.com/oklongmm/biye2 在设计一个宠物常规护理知识管理系统时,我们需要考虑系统的可扩展性,易用性和稳定性。以下是系统设计的功能模块: 一、用户模块: 1. 注册与登录:用户可以通过…

新书速览|软件性能测试、分析与调优实践之路(第2版)

性能调优理论和实践的完美结合,融合作者多年性能调优的经验,读者无须再为性能问题而发 本书内容 《软件性能测试、分析与调优实践之路(第2版)》主要分享作者在多年软件测试从业中积累的关于性能测试、分析诊断与调优技巧等方面的实…

全排列 全排列 II N皇后

46.全排列 力扣题目链接(opens new window) 给定一个 没有重复 数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3]输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ] 递归终止条件:当收集元素的数组path的大小达到和nums数组…

Vue3和Vue2的相关面试知识点,一点要记住

Vue3 1、Vue2 和 Vue3 的区别? vue3 对于 typescript 的支持更加的好 vue3 的 Composition API, vue2 的 Option API vue3 打包使用 tree-shaking 策略,体积更小 vue3 在模板编译的阶段会有静态节点提升,运行时性能更好 vue3…