X.com Chain Blocker

Block author, retweeters, repliers, and auto-block users based on rules (length, content, keywords). Manage block log, whitelist, and settings in a panel.

Автор
millionart
Щоденних встановлень
0
Всього встановлень
1
Рейтинги
0 0 0
Версія
2.2
Створено
30.06.2025
Оновлено
30.06.2025
Size
46,7 кБ
Ліцензія
MIT
Відноситься до

本脚本完全由 AI (Gemini 2.5 Pro) 生成。

作者放弃此脚本的一切版权,不对此脚本产生的任何问题负责,也没有义务对此脚本进行维护。

为了共同抵制垃圾信息,允许任何人转载和修改此脚本。

X.com 九族拉黑 (Chain Blocker)

一个强大的 X.com (原 Twitter) 管理工具,旨在帮助您高效、批量地清理时间线上的垃圾信息和骚扰用户。

核心功能

  • 💥 九族拉黑 (Chain Blocker)
    • 当您对某个推文作者执行“九族拉黑”时,脚本会自动将作者、所有转推者 (Retweeters) 以及所有回复者 (Repliers) 加入后台处理队列,逐一进行拉黑。
  • 🤖 智能自动拉黑 (Auto-Block)
    • 自动扫描您的时间线、搜索结果等页面。
    • 当检测到用户的昵称同时满足以下三个条件时,会自动执行“九族拉黑”或“单独拉黑”:
      1. 长度超长 (默认大于25个字符)。
      2. 包含中文字符
      3. 包含至少2个斜杠字符 (/)
    • 此功能主要用于精准打击昵称中包含大量垃圾广告(如“查档/开盒/定位...”)的用户。
  • ⚙️ 可视化配置面板
    • 提供一个统一的设置面板,用于管理脚本的所有功能。
    • 包含 设置拉黑记录白名单 三个标签页。
  • 白名单与记录管理
    • 所有被拉黑的用户都会被记录在“拉黑记录”中,方便追溯。
    • 您可以轻松地将用户从拉黑记录中移至“白名单”,脚本将自动为您解除拉黑,并且未来不会再拉黑白名单中的用户。
    • 支持在拉黑记录和白名单中进行实时搜索。

使用说明

  1. 手动九族拉黑

    • 在任意一条推文上,点击右上角的“更多”(...)按钮。
    • 在弹出的菜单中,找到带有 红色生物危害图标 (☣️)“九族拉黑 (包括回复)” 选项,点击即可。
    • 脚本会立即开始在后台收集转推者和回复者,并将他们加入处理队列。您可以在屏幕右上角看到队列状态通知。
  2. 配置与记录面板

    • 点击浏览器右上角的 Tampermonkey (油猴) 图标
    • 在弹出的菜单中,点击 “配置与记录” 即可打开设置面板。
    • 设置 (Settings) 标签页:
      • 自动拉黑开关: 开启或关闭智能自动拉黑功能。
      • 拉黑记录最大条数: 设置记录上限,防止记录无限增长。
      • 自动拉黑生效页面: 配置需要自动扫描的 URL 规则,支持 * 通配符。
    • 拉黑记录 (Block Log) & 白名单 (Whitelist) 标签页:
      • 搜索框: 可以通过用户名、@handle 或 User ID 实时筛选列表。
      • 移至白名单: 在“拉黑记录”中,点击用户的 @handle 或其 User ID,该用户将被解除拉黑并移入白名单。
      • 移除记录: 在“拉黑记录”中,点击时间戳可以仅将该用户从记录中移除(不会解除拉黑)。在“白名单”中,点击“移除”按钮可将其移出白名单。

功能预览

🛠️ 【重要】当脚本失效时:如何自行修复

X.com 经常更改其内部 API,这可能导致脚本的“获取转推/回复列表”功能失效。本脚本已将这些易变的 API 端点(Endpoint)集中管理,方便用户在失效后自行修复。

如果您发现点击“九族拉黑”后,队列中没有新增用户,可以尝试按以下步骤操作:

  1. 打开开发者工具

    • 在 X.com 页面上,按 F12 键打开浏览器的开发者工具,然后切换到 “网络(Network)” 标签页。
  2. 过滤网络请求

    • 在“网络”标签页顶部的过滤框中,输入 graphql,这样可以只显示 X.com 的 API 请求。
  3. 触发功能

    • 在网页上执行一个会触发目标功能的操作。例如:
      • 要查找回复列表的 API,请点击进入任意一条推文的详情页
      • 要查找转推列表的 API,请点击任意推文下方的“转帖”计数,在弹出的窗口中查看转推用户列表。
  4. 找到新的 API 请求

    • 在开发者工具的网络请求列表中,您会看到一个新的请求出现。它的名字通常包含 TweetDetail (用于回复) 或 Retweeters (用于转推)。
  5. 提取新的哈希值 (Hash)

  6. 更新脚本

    • 编辑此脚本,在代码顶部找到 API_ENDPOINTS 常量。
    • 将对应功能(如 TweetDetailRetweeters)的 hash 值替换成您刚刚找到的新哈希值。

      // 示例:将 TweetDetail 的哈希值更新
      const API_ENDPOINTS = {
          // ...其他端点...
          TweetDetail: { hash: '-0WTL1e9Pij-JWAF5ztCCA', features: {...} } // 把这里的 hash 换成新的
      };
      
    • 保存脚本,刷新页面即可。

注意: features 对象也可能改变,但修复难度较高。通常情况下,只需更新 hash 即可解决问题。

附注:关于 HTML 结构注释

脚本代码底部有一段关于 HTML 结构的注释。这是为有一定开发经验的用户准备的,它简化了 X.com 推文和用户列表的层级结构,并标注了脚本依赖的关键选择器 (data-testid)。如果未来 X.com 对页面布局进行大改版,导致脚本无法找到元素,您可以参考此注释来更新脚本中的 querySelector 部分。

🤖 【进阶】利用 AI 辅助修改脚本

脚本底部有一段特殊的注释,它被称为 FORMAT-PROTOCOL。这不是代码,而是 给 AI 使用的指令集 (Prompt)。它的作用是让 AI (如 Gemini 2.5 Pro 等) 能够像一个专业的程序员一样,在严格的约束下修改这个脚本,从而最大限度地保留脚本的稳定性和可维护性。

为什么需要这个协议?

直接让 AI 修改复杂的油猴脚本通常会导致以下问题:

  • 破坏逻辑: AI 可能会为了“优化”而重构代码,导致核心功能出错。
  • 改变变量名: 使后续的调试和修改变得困难。
  • 省略代码: AI 经常返回部分修改过的代码片段,而不是完整的、可直接使用的脚本。
  • 过度美化/压缩: 改变代码风格,使其难以阅读。

FORMAT-PROTOCOL 通过设定明确的规则来解决这些问题。

如何使用?

当您想让 AI 帮你修改或增加功能时,请遵循以下步骤:

  1. 复制完整代码:整个油猴脚本的全部代码(从 // ==UserScript== 开头,到 </FORMAT-PROTOCOL>*/ 结尾)完整地复制下来。

  2. 提出明确需求: 在代码的前面或后面,用自然语言清晰地描述您的修改需求。例如:

    • “请帮我修正 XXX 的问题,这是它的 HTML 结构...”
    • “请帮我增加一个功能,在配置面板里添加一个 XXX 的开关...”
    • “九族拉黑按钮没有变红,请修复它的样式。”
  3. 发送给 AI: 将“您的需求” + “完整的脚本代码(包含协议)”一起作为一次完整的输入,发送给 AI。

正确使用示例:

【你的需求,例如:请帮我把九族拉黑按钮的图标换成火焰图标】

--- START OF FILE X.com Chain Blocker.user.js ---

// ==UserScript==
// @name         X.com Chain Blocker
... (这里是完整的脚本代码)
...
</FORMAT-PROTOCOL>
*/

当 AI 看到这个协议后,它会明白自己需要:

  • 返回完整的代码块,而不是代码片段。
  • 保持原有的逻辑结构和变量名,只在必要的地方进行修改。
  • 不添加无用的注释或省略号
  • 只对 CSS 字符串进行压缩,不压缩 JS 逻辑。

通过这种方式,您可以更安全、更高效地利用 AI 的强大能力来维护和定制这个脚本,即使您不是专业的程序员。