#author("2024-12-03T19:01:53+09:00","","")
#author("2024-12-07T18:40:50+09:00","","")
* Twitterの検索結果から表示名にキーワードを含んでくる奴と違う結果を除外するやつ [#FuckElon0001]

<pre>
// ==UserScript==
// @name         Twitter Search Query Filter
// @namespace    https://junkyard.shirotsume.ch/
// @version      1.0.0
// @description  Twitter検索結果からユーザーの表示名に検索ワードを含んでくる馬鹿を除外します。
// @author       shirotsume
// @match        https://x.com/search*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // 検索ワードを取得する関数
    function getSearchQuery() {
        const urlParams = new URLSearchParams(window.location.search);
        const query = urlParams.get("q") || "";
        return query;
    }

    // 検索結果を監視し、条件を満たす要素を非表示にする
    function filterSearchResults() {
        const query = getSearchQuery();

        if (!query) return;

        const searchWords = query.split(/\s+/); // スペースで区切る(複数ワード対応)

        // 検索結果のリストを取得
        const results = document.querySelectorAll("article");

        results.forEach(result => {
            const displayNameElement = result.querySelector("div[data-testid='User-Name'] > div");

            if (displayNameElement) {
                const displayName = displayNameElement.textContent;

                // 表示名に検索ワードが含まれているかチェック
                if (searchWords.some(word => displayName.includes(word))) {
                    // result.style.display = "none"; // 該当結果を非表示
                    result.remove();
                }
            }
        });
    }

    // DOM変更を監視
    const observer = new MutationObserver(() => {
        filterSearchResults();
    });

    observer.observe(document.body, {
        childList: true,
        subtree: true
    });

    // 初期実行
    filterSearchResults();
})();

</pre>


<pre>
// ==UserScript==
// @name         Twitter Search Query Filter
// @namespace    https://junkyard.shirotsume.ch/
// @version      1.0.0a
// @version      1.0.0c
// @description  Twitter検索結果からユーザーの表示名に検索ワードを含んでくる馬鹿を除外します。また、イーロン便器マスクの改悪による違う検索結果も除外します。
// @author       shirotsume
// @match        https://x.com/search*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // 検索ワードを取得する関数
    function getSearchQuery() {
        const urlParams = new URLSearchParams(window.location.search);
        const query = urlParams.get("q") || "";
        return query;
    }

    // 検索結果を監視し、条件を満たす要素を非表示にする
    function filterSearchResults() {
        const query = getSearchQuery();

        if (!query) return;

        const searchWords = query.split(/\s+/); // スペースで区切る(複数ワード対応)

        // 検索結果のリストを取得
        const results = document.querySelectorAll("article");

        results.forEach(result => {
            const displayNameElement = result.querySelector("div[data-testid='User-Name'] > div");
            const tweetTextElement = result.querySelector("div[data-testid='tweetText']");

            if (displayNameElement) {
                const displayName = displayNameElement.textContent;

                // 表示名に検索ワードが含まれているかチェック
                if (searchWords.some(word => displayName.includes(word))) {
                    // result.style.display = "none"; // 該当結果を非表示
                    result.remove();
                }
            }

            if (tweetTextElement) {
                const tweetText = tweetTextElement.textContent;

                // ツイート本文に検索ワードが含まれているかチェック
                if (!searchWords.some(word => tweetText.includes(word))) {
                    // result.style.display = "none"; // 該当結果を非表示
                    result.remove();
                }
            }
        });
    }

    // DOM変更を監視
    const observer = new MutationObserver(() => {
        filterSearchResults();
    });

    observer.observe(document.body, {
        childList: true,
        subtree: true
    });

    // 初期実行
    filterSearchResults();
})();

</pre>


<pre>
// ==UserScript==
// @name         Twitter Search Query Filter
// @namespace    https://junkyard.shirotsume.ch/
// @version      1.0.0b
// @description  Twitter検索結果からユーザーの表示名に検索ワードを含んでくる馬鹿を除外します。また、イーロン便器マスクの改悪による違う検索結果も除外します。
// @author       shirotsume
// @match        https://x.com/search*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // 検索ワードを取得する関数
    function getSearchQuery() {
        const urlParams = new URLSearchParams(window.location.search);
        const query = urlParams.get("q") || "";
        return query;
    }

    // 検索結果を監視し、条件を満たす要素を非表示にする
    function filterSearchResults() {
        const query = getSearchQuery();

        if (!query) return;

        const searchWords = query.split(/\s+/); // スペースで区切る(複数ワード対応)

        // 検索結果のリストを取得
        const results = document.querySelectorAll("article");

        results.forEach(result => {
            const displayNameElement = result.querySelector("div[data-testid='User-Name'] > div:nth-of-type(1)");
            const screenNameElement = result.querySelector("div[data-testid='User-Name'] > div:nth-of-type(2) > div > div");
            const tweetTextElement = result.querySelector("div[data-testid='tweetText']");

            if (displayNameElement) {
                const displayName = displayNameElement.textContent;

                // 表示名に検索ワードが含まれているかチェック
                if (searchWords.some(word => displayName.toLowerCase().includes(word.toLowerCase()))) {
                    // result.style.display = "none"; // 該当結果を非表示
                    result.remove();
                }
            }

            if (screenNameElement) {
                const screenName = screenNameElement.textContent;

                // ユーザー名に検索ワードが含まれているかチェック
                if (searchWords.some(word => screenName.toLowerCase().includes(word.toLowerCase()))) {
                    // result.style.display = "none"; // 該当結果を非表示
                    result.remove();
                }
            }

            if (tweetTextElement) {
                const tweetText = tweetTextElement.textContent;

                // ツイート本文に検索ワードが含まれているかチェック
                if (!searchWords.some(word => tweetText.toLowerCase().includes(word.toLowerCase()))) {
                    // result.style.display = "none"; // 該当結果を非表示
                    result.remove();
                }
            }
        });
    }

    // DOM変更を監視
    const observer = new MutationObserver(() => {
        filterSearchResults();
    });

    observer.observe(document.body, {
        childList: true,
        subtree: true
    });

    // 初期実行
    filterSearchResults();
})();
</pre>

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
This site is protected by Turnstile and the Cloudflare Privacy Policy and Terms of Service apply.