当前位置: 首页 > 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…...

51c自动驾驶~合集58

我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

Swagger和OpenApi的前世今生

Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...

面向无人机海岸带生态系统监测的语义分割基准数据集

描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...

免费PDF转图片工具

免费PDF转图片工具 一款简单易用的PDF转图片工具,可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件,也不需要在线上传文件,保护您的隐私。 工具截图 主要特点 🚀 快速转换:本地转换,无需等待上…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

基于PHP的连锁酒店管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

【C++】纯虚函数类外可以写实现吗?

1. 答案 先说答案&#xff0c;可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...