Aliyun_AutoToggle_Subtitle
// ==UserScript==
// @name Aliyun_AutoToggle_Subtitle
// @namespace https://bbs.tampermonkey.net.cn/
// @version 1.0.0
// @description 阿里云网盘网页版在线观看,需要手动加载字幕,支持mp4,mkv类型视频,支持srt后缀字幕文件的自动加载
// @author You
// @match https://www.aliyundrive.com/drive/folder/*
// @require https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js
//@grant GM_addStyle
// ==/UserScript==
// 在此处键入代码……
(async function(){
//调整字幕颜色(默认紫罗兰色)
GM_addStyle(`.subtitle--1Ou09 p{color:violet!important}`)
const sleep=(t)=>new Promise((reslove)=>setTimeout(reslove,t))
// setTimeout(()=>{
// },1200)
//自动寻找.srt结尾的字幕文件自动加载,不包括.en.srt
await sleep(1200)
console.log(1234555)
const body= $("#root>[class^=body]")
console.log(body)
if(body){
console.log(22222,body[0])
body[0].addEventListener("click",async (e)=>{
const pare=$(e.target).parents("[class^=node-card]")[0]
let text=$(pare).find("[class^=info]").text()
console.log(text)
if(text.includes(".mp4" )||text.includes(".mkv")) {
let pattern=/(?<need>.*?)(?<suffix>\.(mp4|mkv))/gm
// console.log(text.match(pattern))
let standard=text.match(pattern)[0].slice(0,-4)
console.log(standard)
await sleep(500)
$("span:contains('手动添加外挂字幕')").click()
await sleep(1200)
let dd=$("[class^='container']>[class^=bread-container]+[class^=list]").children()
console.log(dd)
//没有字幕文件
if(dd.length<=1){
await sleep(200)
$("button:contains(取消)").click()
return
}
let compare_text
dd.each(async (index,item)=>{
compare_text=$(item).find('span').text()
if(
!compare_text.includes('en')&&compare_text.includes(standard) && /.srt$/.test(compare_text)
){
$(item).click()
console.log(item)
await sleep(200)
$("button:contains(选择)").click()
return false
}
})
// console.log()
}
})
}
})()