烧饼论坛 商城 银行 彩票
登录

收藏了也不会看,X/Twitter JS 清空收藏夹

648
  • 芒果
    UID 1010Lv.10 崭露头角超级版主博主dejavu.moe 编辑于

    X/ Twitter 清空收藏夹,浏览器打开 https://x.com/i/history 登录 F12 控制台执行:

    (async () => {
      const sleep = ms => new Promise(r => setTimeout(r, ms));
      const KEY = 'bm_removed_total_v3';
      let removed = +(sessionStorage.getItem(KEY) || 0);
      const before = removed;
      let idle = 0, skipped = 0;
      while (idle < 10) {
        const students = [...document.querySelectorAll('button[data-testid="removeBookmark"]')];
        const btn = students.find(b => {
          const row = b.closest('article, [data-testid="cellInnerDiv"]');
          return row && !row.dataset.bmSkip;
        });
        if (!btn) {
          if (students.length > 0) break;            // 剩下的都是失败跳过项
          idle++;
          const el = document.scrollingElement;
          el.scrollTop = el.scrollHeight;
          await sleep(2500);
          continue;
        }
        idle = 0;
        const row = btn.closest('article, [data-testid="cellInnerDiv"]');
        btn.click();
        let ok = false;
        for (let i = 0; i < 12 && !ok; i++) {        // 最多等 3 秒确认状态变化
          await sleep(250);
          ok = !document.contains(row)
            || !row.querySelector('button[data-testid="removeBookmark"]');
        }
        if (ok) {
          removed++;
          sessionStorage.setItem(KEY, removed);
          if (removed % 10 === 0) console.log('累计已取消 ' + removed + ' 条');
        } else {
          row.dataset.bmSkip = '1';
          skipped++;
          console.warn('有一条取消后状态没变,已标记跳过(可能是限流),稍后可重跑');
        }
      }
      console.log('本轮取消 ' + (removed - before) + ' 条,累计 ' + removed + ' 条,失败跳过 ' + skipped + ' 条');
      console.log('请刷新页面确认;如果还有书签,再跑一遍即可');
    })();
    
  • 收藏支持反对打赏

8 条回复

  • mubdao
    UID 1206Lv.23 进阶答主
    #1

    你是坏人~清空我的收藏我会哭一天一夜。

  • ping9timeout
    UID 310Lv.9 社区常客
    #2

    再激进点,Deactivate your account 点一下

  • 芒果
    UID 1010Lv.10 崭露头角超级版主楼主博主dejavu.moe
    #3

    @mubdao #1 看看你的收藏夹

  • 芒果
    UID 1010Lv.10 崭露头角超级版主楼主博主dejavu.moe
    #4

    @ping9timeout #2 X 从来没被冻结过 日常合集32
    倒是 Telegram 被杜叔叔冻结过(申诉回来了

  • Fraxinus
    UID 110Lv.14 资深成员
    #5

    我 X 账号,自己注册的一个被冻结了。现在买了一个账号,先养着。

  • jusdyxiao7
    UID 10021Lv.4 渐入佳境
    #6

    我缺的不是脚本,是收藏夹内容~

  • JamesLoc2027
    UID 10385Lv.1 初来乍到
    #7

    批量执行前最好先确认确实不需要这些收藏,脚本里的间隔也可以适当调大,避免触发平台限流。

  • 芒果
    UID 1010Lv.10 崭露头角超级版主楼主博主dejavu.moe
    #8

    @JamesLoc2027 #7 已经触发了,又改了下。
    感觉很多东西你以为自己收藏了会看,其实都是吃灰,所以下定决心只要是当时没急着看的,说明都是没必要的

发表回复