b站主页面视频推荐油猴脚本(更新)

加入下载功能

完整代码

// ==UserScript==
// @name         MyBilibili
// @namespace    http://tampermonkey.net/
// @version      0.3.2
// @description  b站主页面视频推荐挂载脚本
// @author       N-cat
// @match        https://api.bilibili.com/x/web-interface/dynamic/region?ps=*&rid=*
// @match        *://www.bilibili.com/
// @match        *://www.bilibili.com/video/*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant        GM_xmlhttpRequest
// @connect      *
// ==/UserScript==(function() {'use strict';// api及参数说明来自 https://zhuanlan.zhihu.com/p/210779665const style = `<style>.add-main{margin:auto;width:1100px;}.add-div{width: 206px;height: 206px;display:inline-block;padding:7px 7px 7px 7px;box-sizing:content-box;position:relative;}.add-a{color: #212121;margin: 10px 0 8px;height: 40px;text-decoration: none;width: 206px;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;font-size: 14px;line-height: 20px;overflow: hidden;text-overflow: ellipsis;transition: color .3s;}.add-a:hover{color: #00a1d6;transition: color .3s;}.add-img{width: 206px;height: 116px;border-radius: 2px;}.add-author{color:#999;text-decoration: none;transition: color .3s;font-size: 12px;}.add-author:hover{color: #00a1d6;transition: color .3s;}.re{position:fixed;right:80px;bottom:80px;background-color:#00a1d6;color:white;height:50px;width:50px;border-radius: 10px;font-size:15px;border:solid 3px #FA5A57;cursor:pointer;outline: none;}.top{position:fixed;right:80px;bottom:150px;background-color:#00a1d6;color:white;height:50px;width:50px;border-radius: 10px;font-size:15px;border:solid 3px #FA5A57;cursor:pointer;outline: none;}.add-bds{position: absolute;height: 22px;width: 206px;top: 101px;color: white;font-size: 14px;background-color: rgba(0,0,0,.6);// text-align: center;border-radius: 2px;}</style>`;var ps = 50; // 页数var rid = 1; // 类型(1:综合)// var cookie = document.cookie;// console.log(cookie)var data// api删除原数据var pre = document.getElementsByTagName('pre')if(pre.length != 0){pre[0].remove();}// 主站隐藏原数据(旧)var olddiv = document.getElementsByClassName('b-wrap');for(let i in olddiv){if(i > 1){olddiv[i].style.display = "none";}}olddiv = document.getElementsByClassName('international-footer');if(olddiv.length != 0){olddiv[0].style.display = "none";}// 主站隐藏原数据(新)var newdiv = document.getElementsByClassName('bili-layout');if(newdiv.length != 0){newdiv[0].style.display = "none";}// 请求推荐apifunction getvideo(){GM_xmlhttpRequest({url:"https://api.bilibili.com/x/web-interface/dynamic/region?ps=" + ps + "&rid=" + rid,method:"get",// cookie:cookie,onload:function(xhr){data = JSON.parse(xhr.response)console.log(data.data.archives)// 添加元素let div = document.createElement("div");div.classList.add('add-main');for(let i of data.data.archives){//div.innerHTML += '<div class="add-div">'//div.innerHTML += '<a href="https://www.bilibili.com/video/' + i.bvid + '" target="_blank"><img class="add-img" src="' + i.pic + '" /></a><br>'//div.innerHTML += '<a class="add-a" href="https://www.bilibili.com/video/' + i.bvid + '" target="_blank">' + i.title + '</a></div>';// 视频总divlet id = document.createElement("div");div.appendChild(id);id.classList.add('add-div');// 图片链接let a1 = document.createElement("a");id.appendChild(a1);a1.innerHTML = '<img class="add-img" src="' + i.pic + '" />'a1.setAttribute('href',"https://www.bilibili.com/video/" + i.bvid );a1.setAttribute('target',"_blank");// 文字链接let a2 = document.createElement("a");id.appendChild(a2);a2.classList.add('add-a');a2.setAttribute('href',"https://www.bilibili.com/video/" + i.bvid );a2.setAttribute('target',"_blank");// 文字let txt = document.createTextNode(i.title);a2.appendChild(txt);// 作者let a3 = document.createElement("a");id.appendChild(a3);a3.classList.add('add-author');a3.setAttribute('href',"https://space.bilibili.com/" + i.owner.mid );a3.setAttribute('target',"_blank");let author = document.createTextNode(i.owner.name);a3.appendChild(author);// 播放量,点赞,时常let bds = document.createElement("div");bds.classList.add('add-bds');let b = i.stat.view;if(i.stat.view >= 10000){b = (i.stat.view/10000).toFixed(1) + '万'}let d = i.stat.like;if(i.stat.like >= 10000){d = (i.stat.like/10000).toFixed(1) + '万'}let s = i.duration;if(i.duration >= 3600){let mm = parseInt((i.duration%3600)/60);if(mm < 10){mm = '0' + mm;}let ss = i.duration%60;if(ss < 10){ss = '0' + ss;}s = parseInt(i.duration/3600) + ':' + mm + ':' + ss;} else if(i.duration <= 3600 && i.duration >= 60){let mm = parseInt(i.duration/60);if(mm < 10){mm = '0' + mm;}let ss = i.duration%60;if(ss < 10){ss = '0' + ss;}s = mm + ':' + ss;} else {let ss = i.duration%60;if(ss < 10){ss = '0' + ss;}s = '00:' + ss}bds.innerHTML = '<span style="padding-left:10px;float:left;line-height:22px"> ▶ ' + b + ' ❤ ' + d + '</span><span style="padding-right:10px;float:right;line-height:22px">' + s + '</span>';id.appendChild(bds);}div.innerHTML += style;// 设置添加位置var header = document.getElementsByClassName('bili-layout');if(header.length != 0){header[0].parentNode.insertBefore(div, header[0]); // 新} else {document.body.append(div); // 旧}}})}function getQueryVariable(variable){var query = window.location.search.substring(1);var vars = query.split("&");for (var i=0;i<vars.length;i++) {var pair = vars[i].split("=");if(pair[0] == variable){return pair[1];}}return(false);}getvideo();var url = window.location.href;var btn = document.createElement("input");if(url.split('/')[3] == 'video'){// 下载按钮btn.setAttribute("type", "button");btn.setAttribute("value", "下载");btn.classList.add('re');document.body.append(btn);btn.onclick = function(){var bv = url.split('/')[4].split('?')[0];var page = 1;if(getQueryVariable('p')){page = getQueryVariable('p');}// alert(bv);GM_xmlhttpRequest({url:'https://api.bilibili.com/x/web-interface/view/detail?bvid='+bv,method:"get",// cookie:cookie,onload:function(xhr){data = JSON.parse(xhr.response)console.log(data.data.View);var name = data.data.View.title;var cid = data.data.View.pages[page-1].cid;var part = data.data.View.pages[page-1].part;GM_xmlhttpRequest({url:'https://api.bilibili.com/x/player/playurl?bvid='+bv+'&cid='+cid+'&qn=80',method:"get",// cookie:cookie,onload:function(xhr){data = JSON.parse(xhr.response)console.log(data);var vurl = data.data.durl[0].url;var con = confirm('下载视频:'+name+'\n(P'+page+' '+part+')');if(con == true){/*// 文件流可以自定义文件名,但是反馈太慢了,暂不采用var x = new XMLHttpRequest()x.open("GET", vurl, true)x.responseType = 'blob'x.οnlοad=function(e) {//会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL。这个 URL 的生命周期和创建它的窗口中的 document 绑定。这个新的URL 对象表示指定的 File 对象或 Blob 对象。var url = window.URL.createObjectURL(x.response)var a = document.createElement('a')a.href = urla.download = name+'.flv';a.click()}x.send()*/// 普通新页面下载window.open(vurl,'_self');}}});}});}}else{// 刷新按钮btn.setAttribute("type", "button");btn.setAttribute("value", "刷新");btn.classList.add('re');document.body.append(btn);btn.onclick = function(){document.body.scrollTop = document.documentElement.scrollTop = 0;var dd = document.getElementsByClassName('add-main');for(let j of dd){j.style.display = "none";}getvideo(); // 请求后刷新也会请求一次,这里待优化}}// 顶部按钮var top = document.createElement("input");top.setAttribute("type", "button");top.setAttribute("value", "顶部");top.classList.add('top');document.body.append(top);top.onclick = function(){document.body.scrollTop = document.documentElement.scrollTop = 0;}// 下拉刷新let timeout = null;window.onscroll = function() {const scrollH = document.documentElement.scrollHeight;// 文档的完整高度const scrollT = document.documentElement.scrollTop || document.body.scrollTop; // 当前滚动条的垂直偏移const screenH = window.screen.height; // 屏幕可视高度if ((scrollH - scrollT - screenH) < 500) { // 只是一个相对值,可以让页面再接近底面的时候就开始请求timeout && clearTimeout(timeout); // 判断timeout是否在执行timeout = setTimeout(() => {console.log('下拉刷新')getvideo();}, 3000); // api在3s内请求返回重复内容}
};
})();

b站主页面视频推荐油猴脚本(更新)相关推荐

  1. chrome拓展以及油猴脚本推荐

    可以下载chrome拓展的网站 --> 拓展迷 拓展推荐 用途 Tampermonkey 几乎万能 Adblock Plus 免费的广告拦截器 Infinitypro 新标签页 JSON Vie ...

  2. b站解除港澳台限制 油猴脚本 无法授权 找不到IP地址

    b站解除港澳台限制油猴脚本 无法授权 找不到IP地址 可以的话请跳过这段废话 问题描述 解决方案 可以的话请跳过这段废话 作为一个总是看些奇怪动画片的阿宅,睿站的视频码率虽然差,但是胜在方便.这个脚本 ...

  3. [油猴脚本开发指南]h5视频倍速,时间加速和run-at

    转载自油猴中文网:bbs.tampermonkey.net.cn 李恒道QQ4548212 油猴中文网bbs.tampermonkey.net.cn TamperMonkey GreaseMonkey ...

  4. 基于谷歌油猴脚本观看视频

    一.下载.安装chrome浏览器 下载地址:https://download.csdn.net/download/Abel_Huang_/15436666 下载完成一路确认下去就安装好了 二.下载油猴 ...

  5. 油猴脚本推荐:讨厌广告的进,去除百度、360、搜狗、必应的广告和重复内容!广告害人,且用且珍惜

    由于搜索引擎的特殊性,搜索引擎确实给我们带来了方便,但是你给我推荐大片大片的广告是几个意思~~ 退一步说,你们搜索引擎运行有成本,广告可以支持你们更好的维护产品,我们也能理解和接受!广告我不反对,垃圾 ...

  6. 编写你的第一个油猴脚本

    油猴简介 Tampermonkey(油猴)是一款免费的浏览器扩展和最为流行的用户脚本管理器,它适用于 Chrome, Microsoft Edge, Safari, Opera Next, 和 Fir ...

  7. Tampermonkey(油猴)脚本编写快速入门

    目录 油猴脚本概述 脚本注释/注解 脚本权限 grant 添加新脚本 自定义网页倒计时 网页浏览离开黑屏保护 微博视频下载助手 华为云工作项列表突出展示工作项 Greasy Fork 发布脚本 油猴脚 ...

  8. Tampermonkey油猴脚本开发视频教程-3.脚本配置和权限申请UserScript

    视频和代码https://www.toolchest.cn/static/mv3.html 脚本头部2个"// ==UserScript=="之间编写脚本相关的配置信息和权限申请等 ...

  9. 什么?你还不会油猴脚本

    欧!!!我的上帝,你还不知道使用油猴脚本 油猴(Tampermonkey)脚本,其实是一个脚本管理器. 是一款浏览器上最强的脚本管理器,他本身并没有许多特殊功能,但是因为有他.我们可以在浏览器上运行各 ...

  10. [油猴脚本开发指南]脚本往页面上添加新元素

    本节主要内容 转载自油猴中文网:https://bbs.tampermonkey.net.cn/ 李恒道QQ4548212 油猴中文网https://bbs.tampermonkey.net.cn/ ...

最新文章

  1. 【青少年编程竞赛交流】10月份微信图文索引
  2. CCNA实验之---单臂路由实现VLAN间路由
  3. VS2013 C#中调用DLL
  4. [转]大学里面一定要了解十五件事
  5. python 今日头条 控制手机_你知道Python脚本控制安卓手机可以用来做什么吗?
  6. 基于SSM实现的网上书城系统【附源码】(毕设)
  7. Django菜鸟教程学习记录(一)
  8. 虚拟机安装过程中发生该错误:“客户机操作系统已禁用cup”问题解决方法【全】
  9. 小程序之100推荐:901~1000
  10. Android studio: The number of method references in a .dex file cannot exceed 64K. Learn how to resol
  11. Linux系统程序包管理工具-RPM
  12. 解答为什么@Autowired使用在接口上而不是实现类上
  13. “日不落”的大学数据库原理课程设计——机票预订信息系统
  14. 高中数学知识点:集合知识讲解
  15. 华为 ensp 部分查询方法
  16. investment
  17. MySql 获取文件后缀名
  18. 2017 寒假练习题 Part 1
  19. 拆除联想一体机M7131z无线网卡
  20. Word文档多级标题编号及编号前黑条解决方案

热门文章

  1. GJB150.5A-2009军用装备实验室温度冲击环境试验
  2. 64java下载_java软件下载|java64 v8.0 官方版-520下载站
  3. 彩虹查课插件 使用说明 网课查询插件 极速版
  4. tcping下载安装步骤,如何ping端口,tcping详解
  5. 2. Mysql 升级 与 升级后 mysql --version 和 select version() 不一致问题
  6. 心形图案爱心代码编程c语言
  7. linux下删除编译安装的软件,Linux 中卸载编译安装的软件
  8. android实现b站弹幕,B站弹幕库DanmakuFlameMaster源码浅析
  9. Android跑马灯的效果
  10. Goolg adb常用工具包下载地址