当前位置: 首页 > news >正文

Mac下载bilibili视频

安装

  1. 安装 yt-dlp

    brew install yt-dlp
    
  2. 安装FFmpeg

    用于合并音视频流、转码等操作

    brew install ffmpeg
    

使用

下载单个视频
  1. 查看可用格式

    yt-dlp -F  --cookies-from-browser chrome "https://www.bilibili.com/video/BV15B4y1G7F3?spm_id_from=333.788.recommend_more_video.-1&vd_source=6d42abad8703c58f028f7f53a5be37c0"
    
    ID     EXT RESOLUTION FPS │   FILESIZE    TBR PROTO │ VCODEC           VBR ACODEC       ABR
    ───────────────────────────────────────────────────────────────────────────────────────────
    30216  m4a audio only     │ ≈  1.48MiB    46k https │ audio only           mp4a.40.5    46k
    30232  m4a audio only     │ ≈  3.21MiB   100k https │ audio only           mp4a.40.2   100k
    30280  m4a audio only     │ ≈  5.32MiB   167k https │ audio only           mp4a.40.2   167k
    30251  m4a audio only     │ ≈ 72.77MiB  2277k https │ audio only           flac       2277k
    30016  mp4 640x360     29 │ ≈ 11.31MiB   354k https │ avc1.64001E     354k video only
    100022 mp4 640x360     30 │ ≈  9.69MiB   303k https │ av01.0.01M.08   303k video only
    100109 mp4 640x360     30 │ ≈  7.31MiB   229k https │ hev1.1.6.L120   229k video only
    30032  mp4 852x480     29 │ ≈ 25.29MiB   791k https │ avc1.64001F     791k video only
    100023 mp4 852x480     30 │ ≈ 13.43MiB   420k https │ av01.0.04M.08   420k video only
    100110 mp4 852x480     30 │ ≈ 11.52MiB   360k https │ hev1.1.6.L120   360k video only
    30064  mp4 1280x720    29 │ ≈ 52.62MiB  1647k https │ avc1.640028    1647k video only
    100024 mp4 1280x720    30 │ ≈ 26.11MiB   817k https │ av01.0.05M.08   817k video only
    100111 mp4 1280x720    30 │ ≈ 21.32MiB   667k https │ hev1.1.6.L120   667k video only
    30080  mp4 1920x1080   29 │ ≈ 84.02MiB  2629k https │ avc1.640032    2629k video only
    100026 mp4 1920x1080   30 │ ≈ 52.86MiB  1654k https │ av01.0.08M.08  1654k video only
    100113 mp4 1920x1080   30 │ ≈ 44.88MiB  1404k https │ hev1.1.6.L150  1404k video only
    100144 mp4 1920x1080   59 │ ≈ 56.37MiB  1764k https │ hev1.1.6.L150  1764k video only
    100028 mp4 1920x1080   60 │ ≈ 59.68MiB  1867k https │ av01.0.09M.08  1867k video only
    30116  mp4 1920x1080   62 │ ≈138.18MiB  4324k https │ avc1.640032    4324k video only
    100029 mp4 3840x2160   60 │ ≈233.22MiB  7298k https │ av01.0.13M.08  7298k video only
    30120  mp4 3840x2160   62 │ ≈417.50MiB 13064k https │ avc1.640034   13064k video only
    100145 mp4 3840x2160   62 │ ≈239.33MiB  7489k https │ hev1.1.6.L153  7489k video only
    30127  mp4 7680x4320   29 │ ≈411.37MiB 12873k https │ hev1.1.6.L180 12873k video only
    100032 mp4 7680x4320   30 │ ≈379.13MiB 11864k https │ av01.0.16M.08 11864k video only
    
  2. 下载指定分辨率视频

    // 100032 map4数据的ID
    // 30280 m4a数据的ID
    // --merge-output-format 使用ffmpeg合并mp4+m4a
    yt-dlp -f 100032+30280 --merge-output-format mp4 --cookies-from-browser chrome "https://www.bilibili.com/video/BV15B4y1G7F3/?vd_source=6d42abad8703c58f028f7f53a5be37c0"
    
  3. 动态选择分辨率

    yt-dlp -f "bestvideo[height=2160][vcodec^=avc1]+bestaudio" --merge-output-format mp4 --cookies-from-browser chrome "https://www.bilibili.com/video/BV15B4y1G7F3/?vd_source=6d42abad8703c58f028f7f53a5be37c0"
    
下载合集
  1. 命令

    yt-dlp -f "bestvideo+bestaudio/best" --merge-output-format mp4 "合集url"
    
自动化下载
  1. 脚本

    import subprocess
    import sysdef main(input_file):try:with open(input_file, 'r', encoding='utf-8') as urls:for url in urls:print("url:", url)  subprocess.run([  # 此处改为 4 个空格缩进"yt-dlp","-f", "bestvideo+bestaudio/best","-o", "%(playlist_title)s/%(title)s.%(ext)s",  # 通过 %(playlist_title)s 变量指定合集名称作为文件夹名,%(title)s 作为文件名"--concurrent-fragments","4", # 多线程下载"--merge-output-format", "mp4","--cookies-from-browser", "chrome",url.strip()  # 建议添加 strip() 去除 URL 末尾换行符])except FileNotFoundError:print(f"错误:文件 '{input_file}' 不存在")except Exception as e:print(f"其他错误:{e}")if __name__ == "__main__":if len(sys.argv) != 2:print("用法:python script.py <文件路径>")sys.exit(1)main(sys.argv[1])  # sys.argv[1] 为第一个参数(文件路径)
    
  2. 使用

    python3 脚本名 下载地址文本
    
    https://www.bilibili.com/video/BV15B4y1G7F3
    https://www.bilibili.com/video/BV1Ts4y1W7v4
    https://www.bilibili.com/video/BV1mv4y1y7wG
    https://www.bilibili.com/video/BV18T421Y7fA
    https://www.bilibili.com/video/BV13q421c7mY
    

yt-dlp参数解析

基础参数
  1. 格式选择与画质控制

    • -f/--format:指定下载格式(支持动态筛选器或固定ID)

      # 下载最佳视频+最佳音频(自动合并)
      yt-dlp -f "bestvideo+bestaudio" URL# 下载4K分辨率(H.264编码)
      yt-dlp -f "bestvideo[height=2160][vcodec^=avc1]" URL# 列出所有可用格式(ID、分辨率、编码)
      yt-dlp -F URL
      
    • -S/--format-sort:按特定规则排序格式

      # 优先选择分辨率≤1080p且H.264编码的视频
      yt-dlp -S "+res:1080,codec:avc1" URL
      
  2. 输出路径与文件名

    • -o/--output:自定义保存路径与命名规则

      # 按标题保存到指定目录(支持变量占位符)
      yt-dlp -o "~/Downloads/%(title)s.%(ext)s" URL# 包含播放列表序号(适用于批量下载)
      yt-dlp -o "%(playlist_index)s-%(title)s.%(ext)s" PLAYLIST_URL
      
音频与字幕参数
  1. 音频提取与转换

    • -x/--extract-audio:提取音频

      # 提取为MP3格式(最高音质)
      yt-dlp -x --audio-format mp3 --audio-quality 0 URL
      
  2. 字幕处理

    • --write-subs:下载字幕

      # 下载简体中文字幕(不下载视频)
      yt-dlp --write-subs --sub-langs "zh-Hans" --no-download URL# 嵌入字幕到视频文件(需FFmpeg)
      yt-dlp --embed-subs URL
      
登录与网络参数
  1. 身份认证

    • --cookies-from-browser:从浏览器读取Cookies(需关闭浏览器)

      # 使用Chrome的Cookies下载大会员专享内容(如B站4K)
      yt-dlp --cookies-from-browser chrome URL
      
    • --cookies:加载手动导出的Cookies文件

      # 使用cookies.txt文件绕过登录限制
      yt-dlp --cookies cookies.txt URL
      
  2. 代理与限速

    • --proxy:通过代理访问

      # 使用SOCKS5代理下载(绕过地域限制)
      yt-dlp --proxy "socks5://127.0.0.1:1080" URL
      
    • --limit-rate:限制下载速度

      # 限制速度为1MB/s(单位:KB/s)
      yt-dlp --limit-rate 1000 URL
      
播放列表与批量下载
  1. 播放列表控制

    • --playlist-items:选择播放列表中的特定项

      # 下载前5个视频(支持范围如1-5,7)
      yt-dlp --playlist-items 1-5,7 PLAYLIST_URL
      
    • --yes-playlist:强制解析为播放列表

      # 下载单个视频时避免误识别为播放列表
      yt-dlp --no-playlist URL
      
  2. 批量下载

    • -a/--batch-file:从文件读取多个URL

      # 批量下载urls.txt中的链接
      yt-dlp -a urls.txt
      
下载加速
  1. 启用多线程

    --concurrent-fragments 4
    
  2. 使用aria2加速

    --downloader aria2c
    

相关文章:

Mac下载bilibili视频

安装 安装 yt-dlp brew install yt-dlp安装FFmpeg 用于合并音视频流、转码等操作 brew install ffmpeg使用 下载单个视频 查看可用格式 yt-dlp -F --cookies-from-browser chrome "https://www.bilibili.com/video/BV15B4y1G7F3?spm_id_from333.788.recommend_more_vid…...

6个月Python学习计划:从入门到AI实战(前端开发者进阶指南)

作者&#xff1a;一名前端开发者的进阶日志 计划时长&#xff1a;6个月 每日学习时间&#xff1a;2小时 覆盖方向&#xff1a;Python基础、爬虫开发、数据分析、后端开发、人工智能、深度学习 &#x1f4cc; 目录 学习目标总览每日时间分配建议第1月&#xff1a;Python基础与编…...

批量处理 Office 文档 高画质提取图片、视频、音频素材助手

各位办公小能手们&#xff01;你们有没有遇到过想从 Office 文档里提取图片、音频和视频&#xff0c;却又搞得焦头烂额的情况&#xff1f;今天就给大家介绍一款超厉害的工具——OfficeImagesExtractor&#xff01; 这货的核心功能那可真是杠杠的&#xff01;首先是高画质提取&a…...

【甲方安全建设】Python 项目静态扫描工具 Bandit 安装使用详细教程

文章目录 一、工具简介二、工具特点1.聚焦安全漏洞检测2.灵活的扫描配置3.多场景适配4.轻量且社区活跃三、安装步骤四、使用方法场景1:扫描单个Python文件场景2:递归扫描整个项目目录五、结果解读六、总结一、工具简介 Bandit 是由Python官方推荐的静态代码分析工具(SAST)…...

【推荐】新准则下对照会计报表172个会计科目解释

序号 科目名称 对应的会计报表项目 序号 科目名称 对应的会计报表项目   一、资产类     二、负债类   1 1001 库存现金 货币资金 103 2001 短期借款 短期借款 2 1002 银行存款 货币资金 104 2101 交易性金融负债 易性金融负债 3 1012 其他货币资…...

IntelliJ IDEA设置编码集

在IntelliJ IDEA中设置Properties文件的编码格式&#xff0c;主要涉及以下步骤和注意事项&#xff1a; 1. ‌全局和项目编码设置‌ 打开设置界面&#xff1a;File -> Settings -> Editor -> File Encodings。在Global Encoding和Project Encoding下拉菜单中均选择UT…...

类魔方 :多变组合,灵活复用

文章目录 一、类的基础1. 类的基本结构与语法1. 类的定义与实例化2. 成员变量&#xff08;属性&#xff09;3. 构造函数&#xff08;Constructor&#xff09;4. 成员方法 2. 访问修饰符1. 基本访问规则2. 子类对父类方法的重写3. 构造函数的访问修饰符4. 参数属性与继承总结 3.…...

支持多方式拼接图片的软件

软件介绍 本文介绍一款名为 PicMerger 的图片拼接软件。 拼接亮点 PicMerger 这款软件最大的亮点在于&#xff0c;它能够将不同分辨率的图片完美地拼接在一起。拼接时会自动以分辨率最小的图片为标准&#xff0c;操作十分方便。 拼接方式与设置 该软件支持横向和纵向的拼接…...

Qt音视频开发过程中一个疑难杂症的解决方法/ffmpeg中采集本地音频设备无法触发超时回调

一、前言 最近在做实时音视频通话的项目中&#xff0c;遇到一个神奇的问题&#xff0c;那就是用ffmpeg采集本地音频设备&#xff0c;当音频设备拔掉后&#xff0c;采集过程会卡死在av_read_frame函数中&#xff0c;尽管设置了超时时间&#xff0c;也设置了超时回调interrupt_c…...

Android studio Could not move temporary workspace

Android studio Could not move temporary workspace 在Window上运行AS出现Could not move temporary workspace报错方法一&#xff08;有效&#xff09;方法二方法三方法四总结 在Window上运行AS出现Could not move temporary workspace报错 Could not move temporary workspa…...

深度估计中为什么需要已知相机基线(known camera baseline)?

在计算机视觉和立体视觉的上下文中&#xff0c;“已知相机基线”&#xff08;known camera baseline&#xff09;的解释 1. 相机基线的定义 相机基线是指两个相机中心之间的距离。在立体视觉系统中&#xff0c;通常有两个相机&#xff08;或一个相机在不同位置拍摄两张图像&a…...

Spring Cloud 技术实战

Spring Cloud 简介 Spring Cloud 是基于 Spring Boot 构建的微服务框架&#xff0c;提供了一套完整的微服务解决方案。它利用 Spring Boot 的开发便利性&#xff0c;并通过各种组件简化分布式系统的开发。 核心组件 Spring Cloud Netflix Eureka: 服务注册与发现Spring Clou…...

《云端共生体:Flutter与AR Cloud如何改写社交交互规则》

当Flutter遇上AR Cloud&#xff0c;一场关于社交应用跨设备增强现实内容共享与协作的变革正在悄然发生。 Flutter是谷歌推出的一款开源UI软件开发工具包&#xff0c;其最大的优势在于能够实现一套代码&#xff0c;多平台部署&#xff0c;涵盖iOS、Android、Web、Windows、macO…...

【数据结构】1-3 算法的时间复杂度

数据结构知识点合集&#xff1a;数据结构与算法 • 知识点 • 时间复杂度的定义 1、算法时间复杂度 事前预估算法时间开销T(n)与问题规模 n 的关系&#xff08;T 表示 “time”&#xff09; 2、语句频度 算法中语句的执行次数 对于以上算法&#xff0c;语句频度&#xff1a;…...

Science Robotics 封面论文:基于形态学开放式参数化的仿人灵巧手设计用于具身操作

人形机械手具有无与伦比的多功能性和精细运动技能&#xff0c;使其能够精确、有力和稳健地执行各种任务。在古生物学记录和动物王国中&#xff0c;我们看到了各种各样的替代手和驱动设计。了解形态学设计空间和由此产生的涌现行为不仅可以帮助我们理解灵巧的作用及其演变&#…...

Vue百日学习计划Day24-28天详细计划-Gemini版

总目标: 在 Day 24-27 熟练掌握 Vue.js 的各种模板语法&#xff0c;包括文本插值、属性绑定、条件渲染、列表渲染、事件处理和表单绑定&#xff0c;并能结合使用修饰符。 所需资源: Vue 3 官方文档 (模板语法): https://cn.vuejs.org/guide/essentials/template-syntax.htmlVu…...

C++_数据结构_哈希表(hash)实现

✨✨ 欢迎大家来到小伞的大讲堂✨✨ &#x1f388;&#x1f388;养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; 所属专栏&#xff1a;C学习 小伞的主页&#xff1a;xiaosan_blog 制作不易&#xff01;点个赞吧&#xff01;&#xff01;谢谢喵&#xff01;&…...

elasticsearch kibana ik 各版本下载

https://release.infinilabs.com/analysis-ik/stable/或者 https://github.com/infinilabs/analysis-ik/releases...

Uniapp 与 Uniapp X 对比:新手上手指南及迁移到 Uniapp X 的注意事项

文章目录 前言一、Uniapp 与 Uniapp X 核心区别二、Uniapp X 的核心优势三、新手学习 Uniapp X 必备技能栈3.1 基础技能要求3.2 平台相关知识3.3 工具链掌握 四、从 Uniapp 迁移到 Uniapp X 的注意事项4.1 语法转换&#xff1a;4.2 组件替换&#xff1a;4.3 状态管理&#xff1…...

SQL性能分析

查看数据库操作频次 使用SHOW GLOBAL STATUS LIKE Com_______; 指令&#xff0c;能查看当前数据库的INSERT、UPDATE、DELETE、SELECT访问频次 。若以查询为主&#xff0c;需重点优化查询相关性能&#xff0c;如索引&#xff1b;若以增删改为主&#xff0c;可考虑事务处理、批量…...

CANoe测试应用案例之A2L

写在前面 本系列文章主要讲解CANoe测试应用案例之A2L的相关知识&#xff0c;希望能帮助更多的同学认识和了解CANoe测试。 若有相关问题&#xff0c;欢迎评论沟通&#xff0c;共同进步。(*^▽^*) CANoe Option AMD/XCP支持加载A2L到CANoe中&#xff0c;方便ECU内部变量在功能验…...

H2数据库源码学习+debug, 数据库 sql、数据库引擎、数据库存储从此不再神秘

一、源码结构概览 H2源码采用标准Maven结构&#xff0c;核心模块在src/main/org/h2目录下&#xff1a; ├── command/ # SQL解析与执行 ├── engine/ # 数据库引擎核心&#xff08;会话、事务&#xff09; ├── table/ # 表结构定义与操作 ├── index/ # 索引实现&am…...

PopSQL:一个支持团队协作的SQL开发工具

PopSQL 是一款专为团队协作设计的现代化 SQL 编辑器&#xff0c;通过通团队过协作编写 SQL 查询、交互式可视化以及共享结果提升数据分析和管理效率。 PopSQL 提供了基于 Web 的在线平台以及跨系统&#xff08;Windows、macOS、Linux&#xff09;的桌面应用&#xff0c;包括免费…...

tomcat查看状态页及调优信息

准备工作 先准备一台已经安装好tomcat的虚拟机&#xff0c;tomcat默认是状态页是默认被禁用的 1.添加授权用户 vim /usr/local/tomcat/conf/tomcat-users.xml22 <role rolename"manager-gui"/>23 <user username"admin" password"tomcat&q…...

贝塞尔曲线原理

文章目录 一、 低阶贝塞尔曲线1.一阶贝塞尔曲线2. 二阶贝塞尔曲线3. 三阶贝塞尔曲线 一、 低阶贝塞尔曲线 1.一阶贝塞尔曲线 如下图所示&#xff0c; P 0 ​ P_0​ P0​​, P 1 ​ P_1​ P1​​ 是平面中的两点&#xff0c;则 B ( t ) B ( t ) B(t) 代表平面中的一段线段。…...

【MYSQL】笔记

&#x1f4da; 博主的专栏 &#x1f427; Linux | &#x1f5a5;️ C | &#x1f4ca; 数据结构 | &#x1f4a1;C 算法 | &#x1f152; C 语言 | &#x1f310; 计算机网络 在ubuntu中&#xff0c;改配置文件&#xff1a; sudo nano /etc/mysql/mysql.conf.d/mysq…...

构建 TypoView:一个富文本样式预览工具的全流程记录

我正在参加CodeBuddy「首席试玩官」内容创作大赛&#xff0c;本文所使用的 CodeBuddy 免费下载链接&#xff1a;腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴 在一次和 CodeBuddy 的日常交流中&#xff0c;我提出了一个构想&#xff1a;能不能帮我从零构建一个富文本样式…...

使用conda创建python虚拟环境,并自定义路径

创建虚拟环境 conda create --prefixE:/ai-tools/Luoxuejiao/envs/Luo24 python3.8 此时虚拟环境没有名字&#xff0c;只有路径&#xff0c;下面将名字添加到配置中&#xff1a; conda config --append envs_dirs E:/ai-tools/Luoxuejiao/envs/...

【自然语言处理与大模型】向量数据库技术

向量数据库&#xff0c;是专门为向量检索设计的中间件&#xff01; 高效存储、快速检索和管理高纬度向量数据的系统称为向量数据库 一、向量数据库是什么有什么用&#xff1f; 向量数据库是一种专门用于高效存储和检索高维向量数据的系统。它通过嵌入模型将各类非结构化数据&am…...

Java中的伪共享(False Sharing):隐藏的性能杀手与高并发优化实战

引言 在高性能Java应用中&#xff0c;开发者通常会关注锁竞争、GC频率等显性问题&#xff0c;但一个更隐蔽的陷阱——伪共享&#xff08;False Sharing&#xff09;​——却可能让精心设计的并发代码性能骤降50%以上。伪共享是由CPU缓存架构引发的底层问题&#xff0c;常见于多…...

【数据结构】2-3-3单链表的查找

数据结构知识点合集 知识点 单链表的按位查找 GetElem(L,i)&#xff1a;按位查找操作。获取表L中第i个位置的元素的值。 /*查找L中的第i个节点并返回*/ LNode *GetElm(LinkList L,int i) { /*位置不合法返回NULL*/ if(i<0) return NULL; /*p指向当前节…...

从0开始学linux韦东山教程第四章问题小结(1)

本人从0开始学习linux&#xff0c;使用的是韦东山的教程&#xff0c;在跟着课程学习的情况下的所遇到的问题的总结,理论虽枯燥但是是基础。说实在的越看视频越感觉他讲的有点乱后续将以他的新版PDF手册为中心&#xff0c;视频作为辅助理解的工具。参考手册为嵌入式Linux应用开发…...

TYUT-企业级开发教程-第三章

JAVAWEB的三大组件 在 Spring Boot 项目中&#xff0c;会自动将 Spring 容器中的 Servlet 、 Filter 、 Listener 实例注册为 Web 服务器中对应的组件。因此&#xff0c;可以将自定义的 Java Web 三大组件作为 Bean 添加到 Spring 容器中&#xff0c;以实现组件的注册。使用 S…...

【数据结构】2-3-2 单链表的插入删除

数据结构知识点合集 知识点 按位序插入带头节点链表 ListInsert(&L,i,e)&#xff1a;插入操作。在表L中的第i个位置上插入指定元素e&#xff1b;找到第 i-1 个结点&#xff0c;将新结点插入其后 。 /*在带头节点的单链表L的第i个位置插入元素e*/ bool ListInsert(LinkList …...

spark-配置yarn模式

1.上传并解压spark-3.1.1-bin-hadoop3.2.tgz &#xff08;/opt/software) 解压的命令是&#xff1a;tar -zxvf spark-3.3.1-bin-hadoop3.tgz -C /opt/module (cd /opt/software 进入software&#xff09; 2.重命名 解压之后的目录为spark-yarn&#xff08;原为spark-3.1.1-…...

鸿蒙系统电脑:开启智能办公新时代

鸿蒙系统电脑&#xff1a;开启智能办公新时代 引言 2025 年 5 月 8 日&#xff0c;华为正式推出了鸿蒙系统电脑&#xff0c;这款具有里程碑意义的产品&#xff0c;不仅彰显了华为在智能设备领域的创新实力&#xff0c;也为用户带来了全新的智能办公体验。在数字化转型加速的背…...

Ubuntu---omg又出bug了

自用遇到问题的合集 250518——桌面文件突然消失 ANS&#xff1a;参考博文...

COCO数据集神经网络性能现状2025.5.18

根据当前搜索结果&#xff0c;截至2025年5月&#xff0c;COCO数据集上性能最佳的神经网络模型及其关键参数如下&#xff1a; 1. D-FINE&#xff08;中科大团队&#xff09; 性能参数&#xff1a; 在COCO数据集上以78 FPS的速度实现了59.3%的平均精度&#xff08;AP&#xff0…...

elementplus menu 设置 activeindex

<el-menu:default-active"defaultActive"> 更改当前激活的 index 可以 绑定:default-active"defaultActive" 改变 defaultActive 值 即会改变 index 但不会改变路径 watch(() > route.fullPath,(newPath: string) > {defaultActive.value…...

张 心理问题的分类以及解决流程

心理问题的分类以及解决流程 目录 心理问题的分类以及解决流程心理问题的分类**一、心理问题的分类与层次****1. 一般心理问题****2. 严重心理问题****3. 神经症性心理问题(神经症)****4. 精神障碍**轻度问题以心理咨询==判断:时间(3个月,1年,大于1年=神经质),社会功能(…...

网页 H5 微应用接入钉钉自动登录

ℹ️关于云审批 云审批&#xff08;cloud approve&#xff09; &#xff0c;一款专为小微企业打造&#xff0c;支持多租户的在线审批神器。它简化了申请和审批流程&#xff0c;让您随时随地通过手机或电脑完成请款操作。员工一键提交申请&#xff0c;审批者即时响应&#xff0c…...

接口——类比摄像

最近迷上了买相机&#xff0c;大疆Pocket、Insta Go3、大疆Mini3、佳能50D、vivo徕卡人像大师&#xff08;狗头&#xff09;&#xff0c;在买配件的时候&#xff0c;发现1/4螺口简直是神中之神&#xff0c;这个万能接口让我想到计算机设计中的接口&#xff0c;遂有此篇—— 接…...

java每日精进 5.18【文件存储】

1.文件存储思路 支持将文件上传到三类存储器&#xff1a; 兼容 S3 协议的对象存储&#xff1a;支持 MinIO、腾讯云 COS、七牛云 Kodo、华为云 OBS、亚马逊 S3 等等。磁盘存储&#xff1a;本地、FTP 服务器、SFTP 服务器。数据库存储&#xff1a;MySQL、Oracle、PostgreSQL、S…...

LeetCode 394. 字符串解码详解:Java栈实现与逐行解析

文章目录 1. 问题描述2. 解决思路核心问题栈的应用遍历逻辑 3. 完整代码实现4. 关键代码解析处理右括号 ]处理嵌套的示例 5. 复杂度分析6. 总结 1. 问题描述 给定一个经过编码的字符串&#xff0c;要求将其解码为原始字符串。编码规则为 k[encoded_string]&#xff0c;表示方括…...

基于STC89C52的红外遥控的电子密码锁设计与实现

一、引言 电子密码锁作为一种安全便捷的门禁系统,广泛应用于家庭、办公室等场景。结合红外遥控功能,可实现远程控制开锁,提升使用灵活性。本文基于 STC89C52 单片机,设计一种兼具密码输入和红外遥控的电子密码锁系统,详细阐述硬件选型、电路连接及软件实现方案。 二、硬…...

Android 性能优化入门(一)—— 数据结构优化

1、概述 一款 app 除了要有令人惊叹的功能和令人发指交互之外&#xff0c;在性能上也应该追求丝滑的要求&#xff0c;这样才能更好地提高用户体验&#xff1a; 优化目的性能指标优化的方向更快流畅性启动速度页面显示速度(显示和切换)响应速度更稳定稳定性避免出现 应用崩溃&…...

深入理解Docker和K8S

深入理解Docker和K8S Docker 是大型架构的必备技能&#xff0c;也是云原生核心。Docker 容器化作为一种轻量级的虚拟化技术&#xff0c;其核心思想&#xff1a;将应用程序及其所有依赖项打包在一起&#xff0c;形成一个可移植的单元。 容器的本质是进程&#xff1a; 容器是在…...

5.18本日总结

一、英语 复习list3list28 二、数学 学习14讲部分内容&#xff0c;1000题13讲部分 三、408 学习计网5.3剩余内容 四、总结 计网TCP内容比较重要&#xff0c;连接过程等要时常复习&#xff1b;高数学到二重积分对定积分的计算相关方法有所遗忘&#xff0c;需要加强巩固。…...

muduo库TcpServer模块详解

Muduo库核心模块——TcpServer Muduo库的TcpServer模块是一个基于Reactor模式的高性能TCP服务端实现&#xff0c;负责管理监听端口、接受新连接、分发IO事件及处理连接生命周期。 一、核心组件与职责 Acceptor 监听指定端口&#xff0c;接受新连接&#xff0c;通过epoll监听l…...

深入理解 OpenCV 的 DNN 模块:从基础到实践

在计算机视觉领域蓬勃发展的当下&#xff0c;深度学习模型的广泛应用推动着技术的不断革新。OpenCV 作为一款强大且开源的计算机视觉库&#xff0c;其 DNN&#xff08;Deep Neural Network&#xff09;模块为深度学习模型的落地应用提供了高效便捷的解决方案。本文将以理论为核…...