您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Bilibili BV号转AV号工具
// ==UserScript== // @name Bilibili Ban Conventer // @namespace https://github.com/tylzh97 // @version 0.2 // @description Bilibili BV号转AV号工具 // @author Birkhoff // @match *.bilibili.com/video/BV* // @require http://libs.baidu.com/jquery/1.8.3/jquery.min.js // @grant GM_addStyle // ==/UserScript== // 网络状况较好时,可以将次数值调低;网络较差时将此数字调高 // 网页加载完成多少秒后,将av号渲染到页面中 // 由于Bilibili前端使用Vue框架,修改页面模板后可能会导致页面渲染失败,因此要在Vue渲染完毕后脚本才能渲染 const delayTime = 3.5 // 点击复制内容函数 function copy(str) { let transfer = document.createElement('input'); transfer.id = 'copy-temp-input' let v_r = $("#viewbox_report") v_r.append(transfer) transfer.value = str; transfer.focus(); transfer.select(); if (document.execCommand('copy')) { document.execCommand('copy'); } transfer.blur(); $('#copy-temp-input').remove() } (function() { 'use strict'; console.log("This is bilibili Tampermonkey Script.") // 当DOM渲染完成时 $(document).ready(_ => { console.log("Page Loading!") const patt = /video\/(bv.+)/i const url = window.location.href const bv = patt.exec(url)[1] console.log(bv) // 转码参考 https://www.zhihu.com/question/381784377/answer/1099438784 const magicStr = 'fZodR9XQDSUm21yCkr6zBqiveYah8bt4xsWpHnJE7jL5VG3guMTKNPAwcF'; let table = {}; for (let i = 0; i < magicStr.length; i++) table[magicStr[i]] = BigInt(i); let s = [11, 10, 3, 8, 4, 6, 2, 9, 5, 7]; const XOR = 177451812n, ADD = 100618342136696320n; // bv转av解码 function decode(src) { let r = 0n; for (let i = 0; i < 10; i++) { r += table[src[s[i]]] * (58n ** BigInt(i)); } return (r - ADD) ^ XOR; } // 获取bigint类型av号 const av = decode(bv); const str_av = 'av' + av console.log(av) console.log(str_av) // 在视频信息中添加av号标签 let avinfo = '<div class="video-data">' avinfo += '<span style="cursor: pointer" class="a-crumbs" id="av-copy">' + str_av + '</span>' avinfo += '<span style="cursor: pointer" id="url-copy">https://www.bilibili.com/video/' + str_av + '</span>' avinfo += '</div>' let v_r = $("#viewbox_report") // 由于bilibili前端使用了VUE框架,在VUE渲染完毕前修改HTML模板会造成VUE渲染失败,因此此处定时3秒再将av号信息渲染到页面中 setTimeout(_ => { v_r.append(avinfo) $('#av-copy').click(function() { copy(str_av.toString()) }) $('#url-copy').click(function() { copy('https://www.bilibili.com/video/' + str_av) }) }, delayTime * 1000) }) })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址