/
yt-transcript.min.txt
1 lines (1 loc) · 1.18 KB
/
yt-transcript.min.txt
1
javascript:(function(){function t(){let n=e.getCurrentTime(),o=1;for(o=1;o<window.els.length;o++)if(parseFloat(window.els[o].getAttribute("start"))>n){n!=window.tcur&&(window.tcur=n,window.win.scrollTo(0,24*o-(window.win.innerHeight-12)));break}setTimeout(t,100*parseFloat(window.els[o-1].getAttribute("dur"))/e.getPlaybackRate())}var e=document.getElementById("movie_player");window.tcur=-1;for(const n of document.getElementsByTagName("ytd-app")[0].data.playerResponse.captions.playerCaptionsTracklistRenderer.captionTracks)"asr"===n.kind&&fetch(n.baseUrl).then(t=>t.text()).then(n=>{let o=new DOMParser,r=o.parseFromString(n,"text/xml");window.els=r.getElementsByTagName("text");var a="<pre><style>body{font-size:20px;background-color:black;color:white;line-height:24px}</style>";for(const t of window.els)a+=String(parseInt(t.getAttribute("start")/60)).padStart(2,"0")+":"+String(parseInt(parseInt(t.getAttribute("start"))%2560)).padStart(2,"0")+"	"+t.textContent+"<br>";a+="</pre>",window.win=window.open("","_blank","toolbar=0,location=0,menubar=0"),window.win.document.body.innerHTML=a,setTimeout(t,100*parseFloat(window.els[0].getAttribute("dur"))/e.getPlaybackRate())}).catch(t=>console.log(t))})();