Reveal when broadcast started
当前为
// ==UserScript==
// @name YouTube Absolute DateTime
// @namespace https://i544c.github.com/
// @match https://www.youtube.com/*
// @grant none
// @version 1.0
// @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');
const res = await fetch(window.location); // ページ内遷移した際にヘッダーが変わらないため、再度fetchする
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').innerText = startDate.toLocaleString();
};
document.addEventListener('yt-navigate-finish', main);
})()