Tom

Tom

減少 ChatGPT 官方網頁需要頻繁刷新的簡單辦法

減少 ChatGPT 官方網頁需要頻繁刷新的簡單辦法#

轉載自:https://www.v2ex.com/t/926890

多開一個標籤頁,訪問一個需要過驗證但又不會有交互請求的鏈接,例如:

https://chat.openai.com/404

裝個自動刷新的插件,我用的是 GitHub 隨便找的:

https://github.com/Claxtastic/just-refresh ( jquery.min.js 已經和官網的對比過是一致的)

我設置的間隔是 3 秒,對我來說很管用,希望能幫到你們。

原理很簡單,用別的更優雅的方式自然也可以實現。

油猴腳本#

油猴版本,不想裝油猴就直接在對話頁面的 DevTools - Console 裡執行。
優雅一點,不需要多開個標籤頁了。
應該沒人太在意 DevTools - Network 裡有很多 404 請求吧?

// ==UserScript==
// @name         ChatGPT heartbeat
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       https://v2ex.com/t/926890
// @match        https://chat.openai.com/*
// @icon         https://chat.openai.com/favicon.ico
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    setInterval(function(){
        fetch('https://chat.openai.com/404');
    }, 3000);
})();

上面這個油猴腳本僅僅 fetch 404 似乎沒有自動刷新那麼有效,我實測還是要刷新了,幹脆用 iframe 了,寫法可能不好,歡迎指點:

// ==UserScript==
// @name         ChatGPT heartbeat
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       https://v2ex.com/t/926890
// @match        https://chat.openai.com/*
// @icon         https://chat.openai.com/favicon.ico
// @grant        none
// ==/UserScript==

(function () {
  var iframe = document.createElement("iframe");
  iframe.id = "heartbeat";
  iframe.style = "display:none";
  iframe.name = "heartbeat";
  iframe.src = "https://chat.openai.com/404/";
  var fn = function () {
    setTimeout(function(){
        iframe.src = "https://chat.openai.com/404/" + Math.random();
    }, 3000);
  };
  if (iframe.attachEvent) {
    iframe.attachEvent("onload", fn);
  } else {
    iframe.onload = fn;
  }
  document.body.insertBefore(iframe, document.body.firstChild);
})();

上面的油猴腳本佔用太高了,風扇呼呼的。
實測 robots.txt 也有效(fetch 可能失效大概是 Cloudflare 對 Headers 的檢測?)。
下面是 ChatGPT heartbeat 再也不改版,未來如果 robots.txt 無效了可以自己修改鏈接為 404,如果覺得每 5 秒請求一次太頻繁了可以自己調大時間間隔。

// ==UserScript==
// @name         ChatGPT heartbeat
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       https://v2ex.com/t/926890
// @match        https://chat.openai.com/chat/*
// @icon         https://chat.openai.com/favicon.ico
// @grant        none
// ==/UserScript==

(function () {
  var iframe = document.createElement("iframe");
  iframe.id = "heartbeat";
  iframe.style = "display:none";
  iframe.name = "heartbeat";
  iframe.src = "https://chat.openai.com/robots.txt";
  var fn = function () {
    setTimeout(function(){
        document.getElementById('heartbeat').contentWindow.location.reload(true);
    }, 5000);
  };
  if (iframe.attachEvent) {
    iframe.attachEvent("onload", fn);
  } else {
    iframe.onload = fn;
  }
  document.body.insertBefore(iframe, document.body.firstChild);
})();
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。