您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Reveal when broadcast started
// ==UserScript== // @name YouTube Absolute DateTime // @namespace https://i544c.github.com/ // @match https://www.youtube.com/* // @grant none // @version 1.0.1 // @author i544c // @description Reveal when broadcast started // @description:ja その配信がいつ始まったのかを明らかにする // ==/UserScript== (() => { 'use strict'; const _debug = (...msg) => { console.log('[wdbs] ', ...msg); }; const queryString = 'span[itemtype="http://schema.org/BroadcastEvent"] meta[itemprop="startDate"]'; const main = async () => { _debug('start'); // ページ内遷移した際にヘッダーが変わらないため、自身のページをfetchする const res = await fetch(window.location, { cache: 'no-cache' }); const rawBody = await res.text(); const domparser = new DOMParser(); const body = domparser.parseFromString(rawBody, 'text/html'); const startDateText = body.querySelector(queryString)?.getAttribute('content'); if (!startDateText) return; const startDate = new Date(startDateText); _debug(startDate); document.querySelector('#info-text #date *:not(#dot)').innerText = startDate.toLocaleString(); }; document.addEventListener('yt-navigate-finish', main); })();