C#+Signalr+Vue实现B站视频自动回复评论,当一个最懒程序员!

Part1前言

前几天刷到了程序员鱼皮的自动回复视频评论的视频,于是我也想来试试!

Part2开始

第一步

打开想要自动回复评论的视频url,打开调试模式!

ecefa061d97c33ae40d6c3a20cb75a09.png

然后找到可以触发评论的网络请求

a3a5cb7904b67b2ed8f9d66bb8bdd04f.png

可以看到我们的oid是可以唯一确定视频的id,那么这个oid是怎么获取的呢?于是我又一个一个接口的分析 于是找到了获取Oid的请求

https://api.bilibili.com/x/web-interface/archive/stat?bvid=BV1SY4y187Zu

这个bvid不就是我们的视频的url吗?

这样我们根据视频的url获取到bvid,然后根据bvid获取到我们的oid 这样我们的视频的评论数据就抓到了!

1b14b8b4b89cb8dc20f9714c590fd06f.png

第二步

那么由于视频的评论拿到了,那么我们怎么去实现自动回复呢?回复的内容是不是应该根据评论来实现呢?于是就用到了AI机器人回复,可以根据传入的评论,自动生成回复内容!

回复内容我们有了,那么怎么去实现自动回复呢?又去抓取回复评论的接口!

537e60a46e6551f5c98eb00e36bc02e3.png

这样我们是不是就能实现自动评论了!

第三步

然后开始我们的客户端开发了!我想要的是只需要我输入视频的url,就可以实现自动回复,并将回复的内容推送给前端,所以这里我用了Vue和Signalr来实现

<script>
    new Vue({
        el: "#app",
        data: {
            signalR: null,
            name: "",
            sendValue: ""
        },
        methods: {
            initSignalR() {
                var _this = this;
                _this.signalR = new signalR.HubConnectionBuilder()
                    .withUrl("http://localhost:64059/ChatHub")
                    .configureLogging(signalR.LogLevel.Information)
                    .build();



                try {
                    _this.signalR.start();
                } catch (err) {
                    console.log(err);
                }



                //监听连接成功
                _this.signalR.on("Connected", (message) => {
                    HeyUI.$Message(message)
                });

                _this.signalR.on("ReceiveMessage", (user, message) => {
                    HeyUI.$Notice({
                        type: "info",
                        title: user + " 回复 ",
                        content: message
                    });
                });
            },
            send() {

                this.signalR.invoke("SendMessage", this.name, this.sendValue).catch(function(err) {
                    return console.error(err.toString());
                });
            }
        },
        mounted() {
            this.initSignalR();
        },
    })
</script>

效果如下:

1022a52716cefff6fd27fac385ae2ed8.gif

但是这自动回复好像有点人工ZZ!

Part3致歉

对该视频下评论的用户带来的不便,请见谅!

Part4声明

总的来说,技术本无罪,但是你利用技术爬取别人隐私、商业数据,那你就是蔑视法律了,请各位守好各自的底线!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值