利用JS实现b站自动评论

本方法是通过网页控制台运行JS实现b站自动评论

代码如下·:

var i =0;
            setInterval(doComment,10000)
            var ary =["贝拉","可爱捏","拉宝拉宝","王贝拉!!!","芜湖!!!!"];
            function doComment() {
                var txt =document.getElementsByClassName("bpx-player-dm-input")[0];
                var press = document.getElementsByClassName("bui-area bui-button-blue")[0];
                let evt = document.createEvent('HTMLEvents');
                evt.initEvent('input', true, true);
                txt.value = ary[i];
                txt.dispatchEvent(evt);
                setTimeout(100000);
                press.click();
                i++;
                if (i===ary.length-1)
                    i=0;}

        代码的重点是获取评论框txt和发送键press,可以通过元素检查键获取对应的class。

        其中需要注意的是直接对txt进行赋值然后发送并不能实现发送评论的效果,因为没有触发绑定的input事件,b站会反馈“你还没有评论!”。所以需要自行构建事件。

        csdn上的一些相关文章的代码用不了就是上述问题。

        仅模拟回车事件,参考:记录一次艰难,却很有意思的问题解决经历-React input - 掘金

        实验过程最好让评论的时间间隔大些,以防b站显示频繁发言,可以用小号先行实验。

        b站自动发弹幕原理相同,只需要修改txt与press的class,可以自行尝试。
 

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
可以使用 HTML、CSS 和 JavaScript实现 b站番剧的新热推荐轮播图。以下是一个简单的示例代码: HTML 代码: ```html <div class="slider"> <div class="slide active"> <img src="image1.jpg"> <div class="caption">番剧1</div> </div> <div class="slide"> <img src="image2.jpg"> <div class="caption">番剧2</div> </div> <div class="slide"> <img src="image3.jpg"> <div class="caption">番剧3</div> </div> </div> ``` CSS 代码: ```css .slider { position: relative; width: 100%; height: 500px; overflow: hidden; } .slide { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 0.5s ease-in-out; } .slide.active { opacity: 1; } .slide img { width: 100%; height: 100%; object-fit: cover; } .caption { position: absolute; bottom: 20px; left: 20px; font-size: 24px; font-weight: bold; color: #fff; text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5); } ``` JavaScript 代码: ```javascript var slides = document.querySelectorAll('.slide'); var currentSlide = 0; var slideInterval = setInterval(nextSlide, 5000); function nextSlide() { slides[currentSlide].className = 'slide'; currentSlide = (currentSlide + 1) % slides.length; slides[currentSlide].className = 'slide active'; } ``` JavaScript 代码中,首先使用 `document.querySelectorAll` 方法获取所有的幻灯片元素,然后定义了一个 `currentSlide` 变量来跟踪当前显示的幻灯片索引,以及一个 `slideInterval` 变量来存储幻灯片自动播放的时间间隔。`nextSlide` 函数用于切换幻灯片,它将当前幻灯片的类名设置为 `slide`,并将 `currentSlide` 变量增加 1,然后将下一个幻灯片的类名设置为 `slide active`,以使其在页面上显示出来。最后,使用 `setInterval` 函数来定时调用 `nextSlide` 函数,以实现幻灯片自动播放的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值