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

b站视频(网页加客户端)+本地视频 生成回链

b站视频(网页加客户端)+本地视频 生成回链

引言

基于上一篇博客方案

本地视频进度加入笔记+根据进度快速锁定视频位置

我想着只有本地的话, 那b站上的视频, 不是每次都得下载下来吗? 如果是一套课程, 直接下载, 然后视频处理成mp3,还好, 如果只是一个视频, 每次这样处理就有点麻烦了,所以直接基于网页或客户端, 生成回链就是一个不错的方案.

实现的功能V2.0

注意:本2.0使用方法,需要使用双屏幕,并且正确摆放,请参考以下博客设置电脑屏幕

双屏幕摆放方案

(1)本地视频回溯

请看上篇博客本地视频进度加入笔记+根据进度快速锁定视频位置

(2)b站视频网页使用:

生成回链:

回链格式:[时间]-[空降链接]

借助脚本, 把b站空降链接,加入typora

网页回溯:

1.在typora中 按下ctrl+鼠标左键, 浏览器跳转对应视频对应时间

2.时间回溯: 选中 [时间],然后按下 ctrl+alt+u , 利用网页脚本调整网页视频时间为特定时间(需要网页不是全屏,因为需要拓展漏出来)

(3)b站客户端使用

生成回链:

回链格式:[时间]-[空降链接]

借助脚本, 把b站空降链接,加入typora

至于回溯:

参考b站网页客户端的回溯(ctrl 加鼠标左键,快速跳转), 因为b站客户端没有提供时间定位接口

配置方法

下载脚本

三端回链脚本下载

https://wwyz.lanzoup.com/izQTD2l4pzha

image-20250116205924639

后面我们一个一个配置

测试脚本可用性

我们需要先测试每个脚本的功能, 保证脚本可用, 从而保证整个流程可用

1.鼠标移动到特定屏幕

(1) 打开脚本: 双击鼠标移动到特定屏幕.exe

image-20250116211056572

(2)把屏幕这样摆放, 并且设置右边屏幕为主屏幕 1, 左边屏幕为副屏 2

image-20250116211735937

快捷打开此设置小脚本

image-20250116212418975

(3)按下快捷键测试

按下 ctrl+alt+1 : 观察,光标是否移动到了屏幕 1 中央

按下 ctrl+alt+2 : 观察,光标是否移动到了屏幕 2 中央

如果测试通过, 则可以进行下一步

2.edge拓展

(1)把浏览器拓展放在C盘纯英文路径

image-20250116214635444

(2)导入浏览器拓展

image-20250116214321297

(3)测试拓展可用性

在浏览器页面, 按下 ctrl+shift+V , 观察是否可以弹出时间定位框

image-20250116215003262

(4)打开一个b站网页视频, 然后在这个框里,输入 00:01:00, 然后回车,观察视频是否跳转到对应时间(如果没有,请删除拓展,重新添加, )

image-20250116220334366

3.视频索引脚本测试

(1)打开视频索引文件夹, 双击这两个脚本

image-20250116220615066

(2)先测试视频索引空降功能

[00:01:00]-[https://www.bilibili.com/video/BV1eLzGYfEKM?t=60.0]

image-20250116221432098

(3)测试获取视频回溯链接

快捷键:ctrl+alt+y (不打开potplayer的情况下)

网页端:按照刚才的网页全屏( 把网页放在屏幕2 )

typora: 只打开一个文件(已经保存过的,放在屏幕1)

按下 ctrl+alt+y ,然后在typora中观察是否得到 回链

[时间]-[链接]

例如:[00:01:07]-[https://www.bilibili.com/video/BV1eLzGYfEKM?t=67.9]

image-20250116223757004

至此, 网页回链和回溯就测试完了, 下面测试客户端,

(4)测试b站客户端回链生成

①打开b站客户端视频(放在屏幕 2)

②打开一个typora笔记,放在屏幕 1

③按下 ctrl+alt+y, 然后观察回链生成情况

image-20250116224635928

至于客户端回溯, 目前客户端没接口, 只能回溯网页,参考链接空降(ctrl 加鼠标左键,快速跳转)

示例链接如下(和b站链接一样):

[00:00:44]-[https://www.bilibili.com/video/BV1AekJY6ECP?t=44.6]

4.potplayer打开b站视频测试

(1) potplayer要想访问自己的b站, 需要配置key值

chen310/BilibiliPotPlayer: PotPlayer 哔哩哔哩插件:可以直接在 PotPlayer 中播放哔哩哔哩中的视频、直播和音乐

开隐私模式, cookie失效的比较慢

(2)potplayer快捷键配置

① 打开potplayer

② 配置链接

ctrl+alt+F11

image-20250117092519689

③ 测试 打开b站链接

我们可以把从浏览器获得的空降链接,拿过来

[00:00:44]-[https://www.bilibili.com/video/BV1AekJY6ECP?t=44.6&p=1]

然后全选, 按下ctrl+alt+u就可以利用 potplayer打开视频并定位

④ 测试从potplayer获取 空降链接

打开potplayer网页视频的情况下,按下ctrl+alt+y,

就可以把空降链接发送到typora

开发思路

至此, 脚本已经全部测试完成。

下面讲脚本开发思路, 这样就更能体会到脚本带来的便捷。

讲解思路就是, 通过对比 手动获取回链 和 脚本通过模拟手动处理回链 的方式来讲解。

获取回链

手动获取

b站

打开视频, 然后鼠标右键,就可以看到回链设置, 然后左键复制,即可

https://www.bilibili.com/video/BV1eLzGYfEKM?t=2.7

image-20250117093721128

potplayer

https://www.bilibili.com/video/BV1AekJY6ECP?p=1

image-20250117100029490

自动获取回链

B站客户端

因为b站客户端, 没有对应的定位接口, 所以只能获取回链, 对于回溯,需要通过网页拓展

(1)模拟手动点击, 光标移动到屏幕2

(2)右键

(3)左键

(4)拿到链接

https://www.bilibili.com/video/BV1eLzGYfEKM?t=2.7

(5)通过 t=时间, 换算处 [小时:分钟:秒]-[链接]

(6)然后搜索typora窗口, 把处理好的链接, 加入typora

B站网页端

网页端, 获取回链, 也是模拟人工操作, 和B站客户端(ctrl 加鼠标左键,快速跳转)一样

potplayer

[00:00:52]-[https://www.bilibili.com/video/BV1AekJY6ECP?p=1&t=52]

image-20250117101517583

回链回溯

手动回溯
b站

(1)拿到链接

https://www.bilibili.com/video/BV1eLzGYfEKM?t=2.7

(2)ctrl+鼠标左键, 点击链接

(3)进入跳转浏览器,然后空降

(4)手动定位, 按下ctrl+shift+w, 把时间加入到拓展, 然后回车

image-20250117102325534
potplayer

(1)打开链接,等待加载

image-20250117102416216

(2)手动定位

image-20250117102455407

按下快捷键, ctrl+alt+d, 把定位窗口跳出来, 手动输入时间

自动回溯
b站

(1)选中[时间]-[链接]中的 ,链接(强调不带中括号)

https://www.bilibili.com/video/BV1AekJY6ECP?p=1&t=52

(2)按下ctrl+alt+u

(3)脚本自动跳转浏览器(其实和手动点击一样ctrl+鼠标左键)

(4)自动定位

选中[时间]-[链接]中得, [时间]

强调:带中括号

按下 ctrl+alt+u

下面是自动执行的步骤

1.鼠标移动到网页

2.触发ctrl+shift+v

3.然后把选中的链接中的时间,换算成 小时:分钟:秒, 加入到定位框

4.然后回车定位

potplayer

1.选中 [时间]-[链接], 全选, 然后按下ctrl+alt+u

2.自动识别到是全部链接

下面是自动执行的步骤

3.打开potplayer

4.触发快捷键ctrl + alt + f11

5.把链接加入到地址栏

这里有一个bug就是, 加入地址栏之后, 链接中不能包含t=时间,不然识别不到,就会导致每次都是第一集, 所以我把链接自动处理了, 去掉了t,然后定位的时候, 自动记忆定位了

6.打开视频, 等待两秒, ctrl+alt+d 打开定位框

7.输入定位时间 小时:分钟:秒

8.因为是第一次打开视频, 需要加载时间, 所以定为需要人工确认

9.后续如果仍然是同一个视频, 那么按下ctrl+alt+u, 就会自动触发定位

10.如果不是这个视频, 那么就关掉potplayer,重复上述步骤

相关文章:

b站视频(网页加客户端)+本地视频 生成回链

b站视频(网页加客户端)本地视频 生成回链 引言 基于上一篇博客方案 本地视频进度加入笔记根据进度快速锁定视频位置 我想着只有本地的话, 那b站上的视频, 不是每次都得下载下来吗? 如果是一套课程, 直接下载, 然后视频处理成mp3,还好, 如果只是一个视频, 每次这样处理就有点…...

3.数据库系统

3.1数据库的基本概念 3.1.1:数据库体系结构 3.1.1.1集中式数据库系统 数据是集中的 数据管理是集中的 数据库系统的素有功能(从形式的用户接口到DBMS核心)都集中在DBMS所在的计算机 3.1.1.2C/S结构 客户端负责数据表示服务服务器主要负责数据库服务 数据库系统分为前端和后端…...

红米k40s设备驱动设备驱动树

github地址# 链接https://github.com/autoandroida/vendor_xiaomi_munch...

Linux-C/C++--文件 I/O 基础

在 Linux 中,文件 I/O 是指通过系统调用或命令对文件进行的输入输出操作。Linux 操作系统提供了强大的文件操作功能,使得用户和程序可以方便地对文件进行读取、写入、修改和管理。文件 I/O 指的是对文 件的输入/输出操作,说白了就是对文件的读…...

HarmonyOS NEXT开发进阶(六):HarmonyOS NEXT实现嵌套 H5 及双向通信

文章目录 一、前言二、鸿蒙应用加载Web页面2.1 加载网络地址页面2.2 加载本地H5页面 三、实现Web组件 H5 层与鸿蒙应用层进行相互通讯3.1 鸿蒙应用向 H5 页面发送数据3.2 H5页面向鸿蒙应用发送数据 四、拓展阅读 一、前言 随着HarmonyOS NEXT的快速发展,越来越多的…...

【Flink系列】4. Flink运行时架构

4. Flink运行时架构 4.1 系统架构 Flink运行时架构——Standalone会话模式为例 1)作业管理器(JobManager) JobManager是一个Flink集群中任务管理和调度的核心,是控制应用执行的主进程。也就是说,每个应用都应该被…...

动态主机配置协议 (DHCPv4)介绍,详细DHCP协议学习笔记

定义 动态主机配置协议 (DHCP) 是一种用于集中对用户 IPv4 地址进行动态管理和配置的技术。为与 IPv6 动态主机配置协议 (DHCPv6) 进行区分,本文统一将动态主机配置协议称为 DHCPv4。 DHCPv4 协议由 RFC 2131 定义,采用客户端/服务器通信模式&#xff…...

Vue.js组件开发-如何处理跨域请求

在Vue.js组件开发中,处理跨域请求(CORS,即跨来源资源共享)通常不是直接在Vue组件中解决的,而是需要后端服务器进行相应的配置,以允许来自不同源的请求。不过,前端开发者也需要了解一些基本的COR…...

【C++】构造函数与析构函数

写在前面 构造函数与析构函数都是属于类的默认成员函数! 默认成员函数是程序猿不显示声明定义,编译器会中生成。 构造函数和析构函数的知识需要建立在有初步类与对象的基础之上的,关于类与对象不才在前面笔记中有详细的介绍:点我…...

Agent区别于MOE和RAG的核心; Agent(智能体)、RAG和MOE区别

Agent区别于MOE(专家混合模型)和RAG(检索增强生成)的核心 目录 Agent区别于MOE(专家混合模型)和RAG(检索增强生成)的核心自主性与决策能力环境交互与学习能力多模态感知与处理能力Agent(智能体)、RAG(检索增强生成)和MOE(专家混合模型)区别Agent(智能体)RAG(检…...

【PCL】Segmentation 模块—— 欧几里得聚类提取(Euclidean Cluster Extraction)

1、简介 PCL 的 Euclidean Cluster Extraction(欧几里得聚类提取) 是一种基于欧几里得距离的点云聚类算法。它的目标是将点云数据分割成多个独立的簇(clusters),每个簇代表一个独立的物体或结构。该算法通过计算点与点…...

LuaJIT Garbage Collector Algorithms

Explain 本篇文章是对Make Pall发表wili内容《LuaJIT 3.0 new Garbage Collector》的翻译和扩展,因为原文是对LuaJIT 2.x GC重要功能的简介和对LuaJIT 3.0 new GC的工作计划,所以它并不是系统性介绍GC的文章。希望以后能有精力系统性的对LuaJIT 2.x GC做…...

go采集注册表

package mainimport ("fmt""golang.org/x/sys/windows/registry""log""os""strconv""strings" )func USBSTOR_Enum() {// 打开注册表键keyPath : SYSTEM\CurrentControlSet\Services\USBSTOR\Enumk, err : regist…...

软件工程师欧以宁:引领无人机导航与物联网安全的技术革新

在科技日新月异的今天,软件工程师欧以宁凭借卓越的技术能力和前瞻性的创新思维,成为了无人机自主导航和物联网安全领域的佼佼者。作为一名深耕技术前沿的专家,欧以宁不仅推动了无人机导航技术的突破性进展,还为智能家居和物联网的安全架构提供了全新的解决方案。她的研究成果,以…...

从零开始:Gitee 仓库创建与 Git 配置指南

引言 Git 是一款广泛使用的版本控制工具,它能够帮助开发者在开发过程中高效地管理代码的版本。而 Gitee(码云)是国内知名的 Git 托管平台,它提供了强大的代码托管、团队协作和项目管理功能。如果你是 Git 和 Gitee 的新手&#x…...

浅谈计算机网络02 | SDN控制平面

计算机网络控制平面 一、现代计算机网络控制平面概述1.1 与数据平面、管理平面的关系1.2 控制平面的发展历程 二、控制平面的关键技术剖析2.1 网络层协议2.1.1 OSPF协议2.1.2 BGP协议 2.2 SDN控制平面技术2.2.1 SDN架构与原理2.2.2 OpenFlow协议2.2.3 SDN控制器 一、现代计算机…...

在 QNAP NAS中使用 Container Station 运行 Docker 的完整指南

QNAP 为用户提供了一个名为 Container Station 的应用,它在 QNAP NAS 上将 Docker 和 LXC 结合在一起,通过图形化界面,让用户更轻松地在 NAS 上管理容器。本文将带你一步步了解如何在 QNAP NAS 上安装和使用 Container Station,以…...

XML在线格式化 - 加菲工具

XML在线格式化 打开网站 加菲工具 选择“XML 在线格式化” 输入XML,点击左上角的“格式化”按钮 得到格式化后的结果...

大数据学习(34)-mapreduce详解

&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博主哦&#x1f91…...

代码合并冲突解决push不上去的问题

环境:【IntelliJ IDEA】 【Gerrit】 1、错误信息 代码合并,迭代1合并到迭代2,解决冲突后,依然push不上去,报错信息如下: remote: Processing changes: refs: 1 remote: Processing changes: refs…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

Java 二维码

Java 二维码 **技术&#xff1a;**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...

中医有效性探讨

文章目录 西医是如何发展到以生物化学为药理基础的现代医学&#xff1f;传统医学奠基期&#xff08;远古 - 17 世纪&#xff09;近代医学转型期&#xff08;17 世纪 - 19 世纪末&#xff09;​现代医学成熟期&#xff08;20世纪至今&#xff09; 中医的源远流长和一脉相承远古至…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机&#xff0c;它可以执行Java字节码。Java虚拟机是Java平台的一部分&#xff0c;Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案

目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后&#xff0c;迭代器会失效&#xff0c;因为顺序迭代器在内存中是连续存储的&#xff0c;元素删除后&#xff0c;后续元素会前移。 但一些场景中&#xff0c;我们又需要在执行删除操作…...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍 传统滑模观测器采用如下结构&#xff1a; 传统SMO中LPF会带来相位延迟和幅值衰减&#xff0c;并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF)&#xff0c;可以去除高次谐波&#xff0c;并且不用相位补偿就可以获得一个误差较小的转子位…...