🙄

Twitter interestsis no thank you.

に公開

だから「興味関心」のチェックを全て外すんです。

アルゴリズムごときが図に乗るな。知りたい情報は自分で探す。電子計算機ごときが人間を知った気になるな。

概要

「興味関心」のチェックを全て外すんです。

環境

script

今見返すともう少し良いコードが書けそうだけど。。。

userscript.js
// ==UserScript==
// @name         だから「興味関心」のチェックを全て外すんです。
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  だから「興味関心」のチェックを全て外すんです。
// @author       You
// @match        https://twitter.com/settings/your_twitter_data/twitter_interests
// @match        https://x.com/settings/your_twitter_data/twitter_interests
// @icon         https://www.google.com/s2/favicons?sz=64&domain=x.com
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Your code here...
    let hide =function() {
        document.querySelectorAll('main[role="main"] label:not([data-checked="false"])').forEach(function(label) {
            [...label.querySelectorAll('input[type=checkbox]:not(:checked)')].slice(0, 1).forEach(function() {
                label.setAttribute('data-checked', 'false');
                label.style.display = 'none';
            });
        });
    };

    setInterval(function() {
        // uncheck.
        document.querySelector('main[role="main"] label input[type=checkbox]:checked')?.click();

        // hide all. (delay)
        setTimeout(hide, 500);
    }, 5000);

    // hide all (delay) at first.
    setTimeout(hide, 500);
})();

使い方

  1. UserscriptをTampermonkeyに登録する。
  2. Twitterの「興味関心」ページをブック マークにアクセスする。
    https://x.com/settings/your_twitter_data/twitter_interests
  3. ブラウザーを起動したまま長時間時間を潰す。(お昼寝とかお出かけとか、)
  4. happy!

Script説明

  1. 今表示されているチェックされていないボックスを、0.5秒後に非表示にする様にタイマーをセット。
    setTimeout(hide, 500);
    1. main[role="main"] label:not([data-checked="false"]) の中に input[type=checkbox]:not(:checked) が1つでもあるものを探す。
    2. あれば labeldisplay:none で非表示にして、 data-checked 属性に false を設定してマークする。 (再検出防止。)
  2. 5秒間隔での定期実行をセット。 (アク禁防止)
    setInterval(function() {....}, 5000);
    1. チェック ボックスをクリックする。
      document.querySelector('main[role="main"] label input[type=checkbox]:checked')?.click();
    2. 今表示されているチェックされていないボックスを、0.5秒後に非表示にする様にタイマーをセット
      setTimeout(hide, 500);

チェックを外す処理と、非表示の間隔を少しずらしているのがミソ。処理されている感が味わえる。

効果

image.png

くりーん。

Q&A

Q. 「X」では?

A. 1文字ドメインとセンスの欠片もない。

Q. 効果は?

A. なんか卑猥なおすすめが増えた気がする。 (真偽のほどは不明)

Q. 生成AI使ったことある?

A. ChatGPT面白いよね。Wikipedia散歩がもともと好きだったから、よく会話してもらっているワン!

Discussion