B站答题、自动答题转正js代码

众所周知,在B站注册后,为了解锁评论和私信等功能,需要回答100个问题。然而,回答100个多项选择题并不是一件容易的事情,而且也需要相当多的时间。下面,我将介绍一种自动回答这些问题的方法:

  1. 进入回答界面后,右键点击鼠标,选择“检查”。通常,这个选项位于最后一个位置,如下图所示。

  2. 选择“Console”(英文),然后将以下JavaScript代码粘贴进去,如图中的位置所示。

GIF 2023-8-17 星期四 下午 8-05-45.gif

代码一:

var i = 0;

// Set interval to trigger click event on each element with class "answer-outer"
setInterval(function() {
    
    
    // Get the element at index i%length and trigger the click event
    $('.answer-outer').eq(i % $(".answer-outer").length).trigger("click");
    
    // Increment i
    i++;
}, 1500);

代码二:

// 使用setInterval函数,每隔6秒执行一次
setInterval(() => {
    
    
  // 使用querySelectorAll选择所有class为"answer-outer"的元素,并将其转换为数组
  [].slice
    .call(document.querySelectorAll(".answer-outer"))
    .forEach((item, i) => {
    
    
      // 使用setTimeout函数,延迟1500毫秒(1.5秒)后执行点击操作
      setTimeout(() => {
    
    
        item.click();
      }, 1500 * i);
    });
}, 6 * 1000);
// 注意:不要将响应用引号包裹起来

代码三:

var bbk = {
    
    
    //问题序号
    qno: 0,
    //答案序号
    ano: 0,
    init: function () {
    
    
        bbk.answer();
    },
    /**当前题目序号 */
    currNo: function () {
    
    
        return $('.title-number').text().trim().split(' ')[1].split('/')[0] * 1
    },
    /**
     * 答题
     */
    answer: function () {
    
    
        bbk.qno = bbk.currNo();
        console.log('正在回答第 ' + bbk.qno + ' 题 ...');
        //部分1、2
        if (bbk.qno <= 50) {
    
    
            //点击答案
            $('.answer-wrap')[bbk.ano++].click();
            //检测是否正确
            setTimeout(function () {
    
    
                if (bbk.currNo() > bbk.qno) {
    
    
                    bbk.ano = 0;
                    console.log('第 ' + bbk.qno + ' 题回答正确 √');
                }
                bbk.answer();
            }, 2000);
        }
    }
}
bbk.init();

ps:中途可能会出现验证码,手动输入跳过即可:
image.png

猜你喜欢

转载自blog.csdn.net/weixin_44893902/article/details/132522831