以下の内容はhttps://www.aruse.net/entry/2025/01/13/001542より取得しました。


はてブで特定ドメインの記事を非表示にするブックマークレット

はてなブックマークであまり見たくないサイトがあるのだけど除外する機能がなかったので、ChatGPT に相談して特定ドメインの記事を非表示にする簡単なブックマークレットを作ってみました。

変数 urls にカンマ区切りで対象サイトのドメインを指定します。 変数 keywords にカンマ区切りでキーワードを指定するとタイトルも非表示にできます。

javascript:(function() {
    if (!document.location.toString().includes('b.hatena.ne.jp')) {
      return;
    }

    const urls = 'example.com,example.jp'; 
    const keywords = 'keyword1,keyword2';

    const domainsToHide = urls.split(',').map(domain => domain.trim());
    const keywordsToHide = keywords.split(',').map(keyword => keyword.trim());

    if (domainsToHide.length === 0 && keywordsToHide.length === 0) return;


    const items = document.querySelectorAll('.entrylist-contents');

    items.forEach(item => {
      const domainElement = item.querySelector('.entrylist-contents-domain span');
      let shouldHide = false;

      if (domainElement) {
        const domain = domainElement.textContent.trim();
        const domainOnly = domain.split('/')[0];

        if (domainsToHide.includes(domainOnly)) {
          shouldHide = true;
        }
      }

      const titleElement = item.querySelector('.entrylist-contents-title');
      if (titleElement && !shouldHide) {
        const titleText = titleElement.textContent.trim();

        if (keywordsToHide.some(keyword => titleText.includes(keyword))) {
          shouldHide = true;
        }
      }

      if (shouldHide) {
        item.style.display = 'none';
      }
    });  
})();

これが。。

こうなります。

Firefox で動作確認をしています。

コードは自由に改変してご利用ください。

Greasemonkey を使うとブックマークレットのクリックが不要になるのでなお便利。

// ==UserScript==
// @name     はてブフィルター
// @version  1
// @grant    none
// ==/UserScript==

if (!document.location.toString().includes('b.hatena.ne.jp')) {
  return;
}

const urls = 'example.com,example.jp'; 
const keywords = 'keyword1,keyword2';

const domainsToHide = urls.split(',').map(domain => domain.trim());
const keywordsToHide = keywords.split(',').map(keyword => keyword.trim());

if (domainsToHide.length === 0 && keywordsToHide.length === 0) return;


const items = document.querySelectorAll('.entrylist-contents');

items.forEach(item => {
  const domainElement = item.querySelector('.entrylist-contents-domain span');
  let shouldHide = false;

  if (domainElement) {
    const domain = domainElement.textContent.trim();
    const domainOnly = domain.split('/')[0];

    if (domainsToHide.includes(domainOnly)) {
      shouldHide = true;
    }
  }

  const titleElement = item.querySelector('.entrylist-contents-title');
  if (titleElement && !shouldHide) {
    const titleText = titleElement.textContent.trim();

    if (keywordsToHide.some(keyword => titleText.includes(keyword))) {
      shouldHide = true;
    }
  }

  if (shouldHide) {
    item.style.display = 'none';
  }
});



以上の内容はhttps://www.aruse.net/entry/2025/01/13/001542より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14