您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Format time strings to local time in an ISO-like format
// ==UserScript== // @name Format time strings in crt.sh // @namespace https://chat.openai.com/ // @version 1.0 // @description Format time strings to local time in an ISO-like format // @author ChatGPT // @license The Unlicense // @match https://crt.sh/?id=* // @run-at document-end // @grant none // ==/UserScript== (function() { 'use strict'; const nodes = document.querySelectorAll('.text'); for (const node of nodes) { for (const childNode of node.childNodes) { if (childNode.nodeType === Node.TEXT_NODE) { let text = childNode.textContent; const regex = /\w{3}\u00A0[\u00A0\d]\d\u00A0\d{2}:\d{2}:\d{2}\u00A0\d{4}\u00A0GMT/; const match = regex.exec(text); if (match !== null) { const timeString = match[0]; const time = new Date(timeString); const formattedTime = formatTime(time); text = text.replace(timeString, formattedTime); childNode.textContent = text; } } } } function formatTime(date) { function pad(number) { if (number < 10) { return '0' + number; } return number; } const year = date.getFullYear(); const month = pad(date.getMonth() + 1); const day = pad(date.getDate()); const hours = pad(date.getHours()); const minutes = pad(date.getMinutes()); const seconds = pad(date.getSeconds()); const timezoneOffset = date.getTimezoneOffset(); const timezoneOffsetHours = Math.floor(Math.abs(timezoneOffset) / 60); const timezoneOffsetMinutes = Math.abs(timezoneOffset) % 60; const timezoneSign = timezoneOffset <= 0 ? '+' : '-'; const timezone = timezoneSign + pad(timezoneOffsetHours) + pad(timezoneOffsetMinutes); return `${year}-${month}-${day} ${hours}:${minutes}:${seconds} ${timezone}`; } })();