微博批量清理工具(XHR)

批量删除微博工具XHR版本

// ==UserScript==
// @name         微博批量清理工具(XHR)
// @version      1.0.0
// @description  批量删除微博工具XHR版本
// @author       Tobar
// @match        *://weibo.com/u/*
// @grant        none
// @require      https://cdn.bootcdn.net/ajax/libs/jquery/3.4.1/jquery.min.js
// @require      https://cdn.bootcdn.net/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.js
// @namespace https://gf.qytechs.cn/users/142679
// ==/UserScript==

(function () {
    'use strict';
    window.onload = () => {
        //睡眠函数
        function sleep(milliseconds) {
            var start = new Date().getTime();
            for (var i = 0; i < 1e7; i++) {
                if ((new Date().getTime() - start) > milliseconds) {
                    break;
                }
            }
        }

        function sendDelete(id) {
            var postData = {
                "id": id
            };
            var token = $.cookie("XSRF-TOKEN");
            console.info("token=" + token);
            $.ajax({
                url: "/ajax/statuses/destroy",
                contentType: "application/json;charset=UTF-8",
                type: "POST",
                dataType: "json",
                headers: {
                    "x-xsrf-token": token
                },
                data: JSON.stringify(postData)
            });
        }

        function deletePage(userId, pageNum) {
            var list;
            $.ajax({
                url: "/ajax/statuses/mymblog?uid=" + userId + "&page=" + pageNum + "&feature=0",
                type: "GET",
                //sync: false,
                dataType: "json"
            }).done(function (data, textStatus, jqXHR) {
                list = data;
                if (list != null && list.data != null && list.data.list != null) {
                    list.data.list.forEach(function (item) {
                        var id = item.id;
                        console.log(id);
                        sendDelete(id);
                        sleep(100);
                    });
                    sleep(1000);
                    deletePage(userId, pageNum + 1);
                }
            }).fail(function (jqXHR, textStatus, errorThrown) {
                var error = '状态码:' + jqXHR.status + ',异常:' + errorThrown;
                alert('读取数据失败,请稍后重试\n' + error);
            });

        }

        function startDelete() {
            //获取用户userid
            var userId;
            var patt = /weibo.com\/u\/(\d+)/i;
            var n = patt.exec(window.location.href);
            if (n != null && n.length > 1) {
                userId = n[1];
            }

            console.info("userId=" + userId);
            if (userId == null) {
                return;
            }
            deletePage(userId, 1);
        }

        var r = confirm("确定好要删除所有内容了吗,确定好了就点确定吧!");
        if (r === true) {
            startDelete();
        }

    };
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址