GPT-4 手动请求计数器(Chatgpt-GPT-4-Request-Counter-Manual-only

让你可以手动记录过去三小时内gpt-4的使用次数,方便规划管理,显示于右上角 You can manually record the usage frequency of GPT-4 during the past three hours, facilitating planning and management.


Install this script?
  1. // ==UserScript==// @name GPT-4 手动请求计数器(Chatgpt-GPT-4-Request-Counter-Manual-only// @namespace http://tampermonkey.net/// @version 0.21// @description 让你可以手动记录过去三小时内gpt-4的使用次数,方便规划管理,显示于右上角 You can manually record the usage frequency of GPT-4 during the past three hours, facilitating planning and management.// @author Your Name// @match https://chat.openai.com/chat/*// @icon https://chat.openai.com/favicon.ico// @grant none// @license MIT// ==/UserScript==(function() {'use strict';const SECONDS_IN_3_HOURS = 3 * 60 * 60;// 创建包含按钮和请求次数的 divconst wrapperDiv = document.createElement('div');wrapperDiv.style.position = 'fixed';wrapperDiv.style.top = '20px';wrapperDiv.style.right = '20px';wrapperDiv.style.zIndex = '9999';document.body.appendChild(wrapperDiv);// 在页面上创建一个计数器按钮const counterButton = document.createElement('button');counterButton.style.padding = '10px';counterButton.style.backgroundColor = '#007bff';counterButton.style.color = '#ffffff';counterButton.style.border = 'none';counterButton.style.cursor = 'pointer';counterButton.textContent = '记录 GPT-4 请求';wrapperDiv.appendChild(counterButton);// 创建显示当前请求次数的 spanconst requestCountSpan = document.createElement('span');requestCountSpan.style.display = 'block';requestCountSpan.style.marginTop = '10px';requestCountSpan.style.color = '#007bff';requestCountSpan.style.fontSize = '16px';wrapperDiv.appendChild(requestCountSpan);// 创建显示倒计时的 spanconst countdownSpan = document.createElement('span');countdownSpan.style.display = 'block';countdownSpan.style.marginTop = '5px';countdownSpan.style.color = '#007bff';countdownSpan.style.fontSize = '14px';wrapperDiv.appendChild(countdownSpan);// 从 localStorage 中获取之前的计数值和首次请求时间let requestCount = parseInt(localStorage.getItem('gpt4RequestCount')) || 0;let firstRequestTimestamp = parseInt(localStorage.getItem('gpt4FirstRequestTimestamp')) || 0;// 更新显示的请求次数function updateRequestCountDisplay() {requestCountSpan.textContent = `已请求次数:${requestCount}`;}// 更新倒计时显示function updateCountdownDisplay() {if (firstRequestTimestamp === 0) {countdownSpan.textContent = '';return;}const now = Math.floor(Date.now() / 1000);const elapsedTime = now - firstRequestTimestamp;const remainingTime = SECONDS_IN_3_HOURS - elapsedTime;if (remainingTime <= 0) {countdownSpan.textContent = '倒计时已结束,请求次数已刷新';firstRequestTimestamp = 0;requestCount = 0;localStorage.removeItem('gpt4FirstRequestTimestamp');localStorage.removeItem('gpt4RequestCount');} else {const remainingHours = Math.floor(remainingTime / 3600);const remainingMinutes = Math.floor((remainingTime % 3600) / 60);const remainingSeconds = remainingTime % 60;countdownSpan.textContent = `${remainingHours}小时${remainingMinutes}分${remainingSeconds}秒后回复`;}}// 初始化显示updateRequestCountDisplay();updateCountdownDisplay();// 每秒更新倒计时setInterval(updateCountdownDisplay, 1000);// 当按钮被点击时,增加计数值并显示弹出框counterButton.addEventListener('click', () => {requestCount++;localStorage.setItem('gpt4RequestCount', requestCount);updateRequestCountDisplay();if (firstRequestTimestamp === 0) {firstRequestTimestamp = Math.floor(Date.now() / 1000);localStorage.setItem('gpt4FirstRequestTimestamp', firstRequestTimestamp);}updateCountdownDisplay();});})();