【B站】B站计算集数时长,调节任意倍速
- 打开浏览器,任意收藏一个网址,将URL替换为下面的代码并保存

- 打开任意B站视频页面,点击这个收藏的网址,即可在页面右边看到如下窗口

javascript: (function () {
var hour = 0;
var minute = 0;
var second = 0;
var txt = document.getElementsByClassName("cur-page")[0].innerHTML;
var page = txt.match(/\/(\d+)/)[1];
function f1() {
hour = 0;
minute = 0;
second = 0;
var min = 0;
var sec = 0;
if (document.getElementById("divChild")) {
d.removeChild(document.getElementById("divChild"));
}
if (
parseInt(input1.value) >= 1 &&
parseInt(input1.value) <= page &&
parseInt(input2.value) <= page &&
parseInt(input1.value) <= parseInt(input2.value)
) {
for (
var i = parseInt(input1.value) - 1;
i < parseInt(input2.value);
i++
) {
var time = document.getElementsByClassName("duration")[i].innerHTML;
var t = time.match(/\d+/g);
if (t.length == 3) {
var h = t[0];
var m = t[1];
var s = t[2];
} else {
var h = 0;
var m = t[0];
var s = t[1];
}
hour += parseInt(h);
min += parseInt(m);
sec += parseInt(s);
}
hour += parseInt(min / 60);
minute = min - parseInt(min / 60) * 60 + parseInt(sec / 60);
second = sec - parseInt(sec / 60) * 60;
if (minute >= 60) {
hour += parseInt(minute / 60);
minute = minute - parseInt(minute / 60) * 60;
}
if (second >= 60) {
minute = parseInt(second / 60);
second = second - parseInt(second / 60) * 60;
}
if (input3.value != 1) {
var total = hour * 3600 + minute * 60 + second;
total = total / input3.value;
hour = parseInt(total / 3600);
minute = parseInt((total % 3600) / 60);
second = total % 60;
}
var d1 = document.createElement("div");
d1.style.cssText = "margin-top:15px";
d1.setAttribute("id", "divChild");
d.appendChild(d1);
var t1 = document.createTextNode(
"全" +
(parseInt(input2.value) - parseInt(input1.value) + 1) +
"集:" +
hour +
"时" +
minute +
"分" +
parseInt(second) +
"秒"
);
d1.appendChild(t1);
} else {
var d1 = document.createElement("div");
d1.style.cssText = "margin-top:15px";
d1.setAttribute("id", "divChild");
d.appendChild(d1);
var t1 = document.createTextNode("输入与实际集数不符");
d1.appendChild(t1);
}
}
function f2() {
document.querySelector("video").playbackRate = parseFloat(input4.value);
console.log(parseFloat(input4.value));
}
function over() {
btn.style.backgroundColor = "#E4E4E4";
}
function out() {
btn.style.backgroundColor = "#F4F4F4";
}
function over2() {
btn2.style.backgroundColor = "#E4E4E4";
}
function out2() {
btn2.style.backgroundColor = "#F4F4F4";
}
var body = document.body;
var d = document.createElement("div");
d.style.cssText =
"padding-top:15px;width:145px;height:180px;background-color:#F4F4F4;position:absolute;right:55px;top:218px;border:1px solid #00A1D6;color:#00A1D6;z-index:999;text-align:center;font-size:14px";
body.appendChild(d);
var d2 = document.createElement("div");
d.appendChild(d2);
var t2 = document.createTextNode("第");
d2.appendChild(t2);
var input1 = document.createElement("input");
input1.setAttribute("type", "number");
input1.style.cssText = "border: 1px solid deepskyblue;width:40px";
d2.appendChild(input1);
var t3 = document.createTextNode("集到");
d2.appendChild(t3);
var input2 = document.createElement("input");
input2.setAttribute("type", "number");
input2.style.cssText = "border: 1px solid deepskyblue;width:40px";
d2.appendChild(input2);
var t4 = document.createTextNode("集");
d2.appendChild(t4);
var t5 = document.createTextNode("倍速:");
d2.appendChild(t5);
var input3 = document.createElement("input");
input3.setAttribute("type", "number");
input3.style.cssText =
"border: 1px solid deepskyblue;width:50px;margin-top:15px;margin-right:10px";
input3.value = 1;
d2.appendChild(input3);
var t6 = document.createTextNode("倍");
d2.appendChild(t6);
var btn = document.createElement("input");
btn.setAttribute("type", "button");
btn.setAttribute("value", "计算");
btn.style.cssText =
"width:50px;margin-top:15px;border: 1px solid #00A1D6;cursor:pointer";
d.appendChild(btn);
btn.onclick = f1;
btn.onmouseover = over;
btn.onmouseout = out;
var d3 = document.createElement("div");
d.appendChild(d3);
var t7 = document.createTextNode("当前倍速:");
d3.appendChild(t7);
var input4 = document.createElement("input");
input4.setAttribute("type", "number");
input4.style.cssText =
"border: 1px solid deepskyblue;width:50px;margin-top:15px;margin-right:10px";
input4.value = document.querySelector("video").playbackRate;
d3.appendChild(input4);
var btn2 = document.createElement("input");
btn2.setAttribute("type", "button");
btn2.setAttribute("value", "修改");
btn2.style.cssText =
"width:50px;margin-top:15px;border: 1px solid #00A1D6;cursor:pointer";
d.appendChild(btn2);
btn2.onclick = f2;
btn2.onmouseover = over2;
btn2.onmouseout = out2;
})();
参考
【B站】B站计算集数时长,调节任意倍速的更多相关文章
- PHP根据秒计算持续时长
/** * 计算持续时长 * * @param int $second 秒数 * @return string $duration 5天10小时43分钟40秒 */ function second2d ...
- jq计算总时长
1: <style> .item { width: 500px; height: 50px; margin: 0 auto; text-align: center; font-size: ...
- js计算在线时长
后台传来毫秒,前台转换成对应的时分秒 //在线时长 function longTime(seconds){ //总秒数 //seconds=seconds/1000; //得到小时 var hour ...
- java中最简单的计算执行时长的方式
日常在做一些性能测试的时候会通过执行时间来判断执行时长,java中最简单的方式如下: //开始时间 long startL= new Date().getTime(); //这里需要导入 java.u ...
- 使用Scala编写Spark程序求基站下移动用户停留时长TopN
使用Scala编写Spark程序求基站下移动用户停留时长TopN 1. 需求:根据手机基站日志计算停留时长的TopN 我们的手机之所以能够实现移动通信,是因为在全国各地有许许多多的基站,只要手机一开机 ...
- Spark性能调优篇六之调节数据本地化等待时长
数据本地化等待时长调节的优化 在项目该如何使用? 通过 spark.locality.wait 参数进行设置,默认为3s,6s,10s. 项目中代码展示: new SparkConf().set(&q ...
- js用img代替ajax js心跳 向服务器定时传送参数 主要计算用户在线时长
html: <!doctype html><html><head><meta charset="utf-8"><title&g ...
- 发布.net 4.0的站点到IIS7.5下时无法访问
现象: 初始发布.net 4.0站点到IIS7.5下时,各种配置都完毕的情况下依旧无法访问.首页显示站点目录结构(注:开启目录结构访问后会显示这个错误,否则会提示开启),访问次级目录提示:Handle ...
- hive计算网页停留时长
hive表结构例如以下: create table pv_user_info( session_id string, user_id string, url string, starttime big ...
- iNeuOS工业互联网操作系统,脚本化实现设备运行时长和效率计算与统计
目 录 1. 概述... 2 2. 实时采集开停状态... 2 3. 增加虚拟设备... 2 4. 脚本统计和计算设备运行时长... 4 5. ...
随机推荐
- IDEA新手使用教程【详解】
IDEA是一款功能强悍.非常好用的Java开发工具,近几年编程开发人员对IDEA情有独钟. Intellij Idea使用技巧总结 1.如何设置通过鼠标滑轮改变编辑器字体大小 2.如何设置自动导包功能 ...
- Cesium渲染模块之概述
1. 引言 Cesium是一款三维地球和地图可视化开源JavaScript库,使用WebGL来进行硬件加速图形,使用时不需要任何插件支持,基于Apache2.0许可的开源程序,可以免费用于商业和非商业 ...
- 公司有两台电脑,却分给一个上网ip
解决办法,只限于本公司: 电脑a和电脑b 电脑a先用ip 6.21上网,之后将ip改为其它: 电脑b改为6.21 此时两台电脑都能上网了
- 97、UserAgentUtils
user-agent-utils 是一个用来解析 User-Agent 字符串的 Java 类库. 其能够识别的内容包括: 超过150种不同的浏览器: 7种不同的浏览器类型: 超过60种不同的操作系统 ...
- uniapp 提示 打包时未添加 push模块
最近打包上架的 ios项目 启动项目提示打包时未添加 push模块 在uniapp manifest中可以配置消息推送,可以我们项目没有用到这个功能,真是日狗了,排除半天仔细检查了使用Push ...
- Codeforces Round #748 (Div. 3) - D2. Half of Same
数论 + 随机化 [Problem - D2 - Codeforces](https://codeforces.com/contest/1749/problem/D) 题意 给定一个长度为 \(n\; ...
- JDK8在xp安装办法
jdk默认不支持xp,用到了后来的api,直接没法安装. 具体安装步骤: 1.用7-zip打开jdk8的版本8u231之前的版本. 2.导航到 .rsrc\1033\JAVA_CAB10\111把里面 ...
- 前端下载图片、pdf、excel、world文件;前端下载图片和pdf文件;前端a标签下载图片和pdf文件;下载文件名称不生效原因
https://blog.csdn.net/i_am_a_div/article/details/125050379 https://blog.csdn.net/moguzhale/article/d ...
- .net core 3.1 上传大文件报错413 Payload Too Large
IIS配置如下 https://www.cnblogs.com/hallejuayahaha/p/12884347.html 代码里面新增 services.Configure<FormOpti ...
- spring RedisTemplate用法
1.maven依赖 <!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-redis --&g ...