bili2.0监控搭建

由于作者的readme写的不是很清楚,这里就写一下详细步骤.
这把这个源码clone下来
https://github.com/yjqiang/YjMonitor
然后安装所有要用的包,(python环境就不说了) :huaji14:

pip install aiohttp==3.6.2 aiojobs==0.2.2 argon2-cffi==19.2.0 async-timeout==3.0.1 attrs==19.3.0 cffi==1.14.0 multidict==4.7.4 pampy==0.3.0 pyasn1==0.4.8 pycparser==2.19 rsa==4.0 toml==0.10.0 yarl==1.4.2 requests==2.21.0 idna==2.6 -i https://pypi.tuna.tsinghua.edu.cn/simple

然后到YjMonitor/ctrl/key目录生成key(super_admin_privkey.pem,super_admin_pubkey.pem,admin_privkey.pem,admin_pubkey.pem)
python3 create_key.py

把这两个密钥改名(先改admin还是superadmin随便你)
mv pubkey.pem admin_pubkey.pem&&mv privkey.pem admin_privkey.pem

总共需要两组密钥,需要再生成一对密钥再改名

python3 create_key.py
mv pubkey.pem super_admin_pubkey.pem&&mv privkey.pem super_admin_privkey.pem


图好像错了.懒得改了 :huaji12:
现在就有了两组密钥,现在把他们丢到各个部分的key文件夹(偷个懒全丢进去 :huaji21: )

cp *pem ../../monitor/key
cp *pem ../../server/key

然后切换到YjMonitor/monitor/conf目录

cd ../../
cd monitor/conf

将user.sample.toml和ctrl.sample.toml改成user.toml和ctrl.toml

cp ctrl.sample.toml ctrl.toml&&cp user.sample.toml user.toml

然后在user.toml中填入账号密码(别的不用填)

ctrl.toml中是监控的房间范围和''server部分''的地址现在不用改.

然后回到上级目录就可以运行了

现在可以看到monitor部分已经开始运行了

这里和我一样用Ubuntu或者其他Linux的可能会遇到最大文件限制数 ulimit的问题,把值改大点就好了

ulimit -n 65535

接下来是server的部分

cd ..
cd server/
python3 run.py

server部分已经跑起来了

现在需要生成key,

切换到ctrl目录(要保持server部分运行)

cd ../ctrl/

将global_var.py中的ip改到本地
如图:

然后运行req_create_key.py产生一个key

解密结果后面的就是bili2.0的ctrl.toml中的密钥

整个监控要monitor和server一起运行

monitor向server推送,server向bili2.0推送

差不多就这样吧..

点赞
  1. tlj218说道:
    Sogou Explorer Windows 10

    [2020-03-20 17:16:48] 反复请求多次未成功, http://127.0.0.0:8001/post_raffle, {'json': {'code': 0, 'type': 'raffle', 'data': {'raffle_id': 1012377, 'room_id': 45190, 'raffle_type': 'TV', 'end_time': 1584695962, 'other_raffle_data': {'raffleId': 1012377, 'type': 'GIFT_30406', 'time': 180, 'time_wait': 120}, 'latest_update_rooms_time': 0}, 'verification': {'signature': 'JpBVOZyp7Lum0K2WYhdSuf0q2Gmz1xRW/qUWxXvz/d119G7Ek/lUJ5ETdGEQXUeM6TJipfV5lczbXvQHMRL+JaGkpTk27/S+9dW7AUEpupJVfQ92Z2eKRvILtmMUreYHK8rHxTdFhjEWM46P/fST4CBUPN2iA/JEnwSKKqFxNdw=', 'time': 1584695782, 'name': '0-500(V7.3.0b0)'}}}
    Cannot connect to host 127.0.0.0:8001 ssl:default [Network is unreachable] http://127.0.0.0:8001/post_raffle
    请问这是什么问题,我按照你的步骤做的

    1. tianle tianle说道:
      Google Chrome Windows 10

      这是哪一步? :yiwen:

      1. tlj218说道:
        Sogou Explorer Windows 10

        现在可以看到monitor部分已经开始运行了

        1. tianle tianle说道:
          Google Chrome Windows 10

          你没开server吧? :yiwen:

          1. tlj218说道:
            Sogou Explorer Windows 10

            开了,完全按照你的步骤走的,然后monitor部分就会显示这个,全部都是的,一直在翻滚这个

          2. tianle tianle说道:
            Google Chrome Windows 10

            127.0.0.0是啥???....

      2. tlj218说道:
        Sogou Explorer Windows 10

        还有那个127.0.0.1:8001要不要在路由器上开个端口啊

        1. tianle tianle说道:
          Google Chrome Windows 10

          127.0.0.1是本地主机啊.....

          1. tlj218说道:
            Sogou Explorer Windows 10

            我还傻傻去看路由器,企图开个端口,发现地址都是192开头的还改不了

          2. tlj218说道:
            Sogou Explorer Windows 10

            我承认我自己是傻子 :huaji12:

          3. tianle tianle说道:
            Google Chrome Windows 10

            emmmm

  2. tlj218说道:
    Sogou Explorer Windows 10

    最后,问一下,如果我在一个设备上运行这个监控,然后可不可以再另一个设备上挂辣条使用监控地址和秘钥啊,在同一个路由器下

    1. tianle tianle说道:
      Google Chrome Windows 10

      可以吧

      1. tlj218说道:
        Sogou Explorer Windows 10

        实验了一下,两个树莓派之间搞的,不行,显示连接错误。

        1. tianle tianle说道:
          Google Chrome Windows 10

          可能是你操作有问题

  3. tlj218说道:
    Sogou Explorer Windows 10

    ε=(´ο`*)))唉,监控服务器是搭建好了,但是B站现在动不动就是要验证好烦,导致自己六个号用bili2.0测试,全是未登录。
    还有试试了https://github.com/Billyzou0741326/bilibili-raffle-js这个项目,监控服务器和登录没问题,但是那个app端的access_tokens咋搞,又是个问题。
    https://github.com/Dawnnnnnn/bilibili-live-tools项目,搭本文的监控服务器,又是各种连接不上,按照教程里user.conf:%5Bmonitoy_server%5D用于设置监控服务器的地址及密钥
    [monitoy_server]
    on/off = 1
    host = tcp://127.0.0.1(http也是一样)
    port = 8001
    key = [7~HRxj4VAKk#uZx
    各种服务器未连接。
    (´இ皿இ`)
    号抓狂,都不知道哪里错了

    1. tlj218说道:
      Sogou Explorer Windows 10

      行吧,大佬告诉我,两个项目之间不是互通的

    2. tianle tianle说道:
      Google Chrome Windows 10

      :huaji9: 那就母鸡了你去提个iss问问吧 :huaji14:

  4. ninja说道:
    QQbrowser Windows 10

    哪里设置key地址端口啊,我有公网ip

    1. tianle tianle说道:
      Google Chrome Windows 10

      ???

  5. ninja说道:
    QQbrowser Windows 10

    就是我想让key在非本地网络上使用,不知道在哪里改端口

    1. tianle tianle说道:
      Google Chrome Windows 10

      母鸡,默认8002开出去不就好了

      1. ninja说道:
        QQbrowser Windows 10

        小鸡只有10个限制端口很难受 :tu:

  6. ninja说道:
    QQbrowser Windows 10

    自定义端口我找到了,但只能监控几百个房间不知道为什么,明明也没有占用什么资源

    1. tianle tianle说道:
      Google Chrome Windows 10

      ?

      1. ninja说道:
        QQbrowser Windows 10

        监控房间多了网络无响应,明明没吃什么资源

        1. tianle tianle说道:
          Google Chrome Windows 10

          什么意思? :yiwen:

          1. ninja说道:
            QQbrowser Windows 10

            就是监控房间太多了后本地网络用不了,打开资源管理器各项占用也很低,不知道为什么,也就挂了几千个房间

          2. tianle tianle说道:
            Google Chrome Windows 10

            一个房间一个连接,可能你路由器挂了

  7. ninja说道:
    QQbrowser Windows 10

    行吧可能是路由太拉胯了,改天换个路由试试

  8. blackzzzzz说道:
    Google Chrome Windows 7

    在最后一步创建key的时候出问题了

    HTTPConnectionPool(host='127.0.0.1', port=8001): Max retries exceeded with url: /create_key (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused'))

    1. blackzzzzz说道:
      Google Chrome Windows 7

      运行server下的run.py会卡住

      1. tianle tianle说道:
        Google Chrome Windows 10

        什么意思....

    2. tianle tianle说道:
      Google Chrome Windows 10

      你server开着么?...

      1. blackzzzzz说道:
        Google Chrome Windows 7

        运行server下的run.py后就卡了

      2. blackzzzzz说道:
        Google Chrome Windows 7

        解决了。原来要再开一个链接
        (纯小白什么都不会)

      3. blackzzzzz说道:
        Google Chrome Windows 7

        监控在服务器上开启后
        将ip和key 在bili2.0里的ctrl里填上后
        在本地运行run.py会闪退

        1. tianle tianle说道:
          Google Chrome Windows 10

          报了啥错呀....

          1. blackzzzzz说道:
            Google Chrome Windows 7

            有输出崩溃报告的方法吗?
            只要在ctrl里填上密匙运行就会闪退
            (用qq上的识图抄下来的)
            File "P:NI DM下载\bi1i2.0-nastervrun.py", line 140, in init nonitors
            nonitor = TcpY jMon itorClient<
            File "F:NIDM 下载bili2 . 0-nas ter\dannuyj nonitor abc yj_ monitor.py", line 1?
            in
            _init
            conn = TcpConn<
            File "D: ypython Nlib\s ite -pac kages dannu abc conn.py". line 52,in_ init _
            raise TypeError(f'url schene must he tcp
            TypeError: url scheme nust be tcp (
            Unclosed client session
            client_ sess ion:
            Unc losed c lient sess ion
            client_ session:
            Unclosed client session
            client_ session:
            Unc losed connector
            connections: [' [k, 514? . 642)]' ]
            connector:
            Unc losed connec tor
            connections: [' [<. 5147486)] ]
            connector:
            Unclosed client sess ion
            client_ sess ion:

          2. tianle tianle说道:
            Google Chrome Windows 10

            你可以问问作者....不懂...

  9. 手残党呵呵说道:
    Google Chrome Android 9

    我搭建只用了一组秘钥
    super和admin一样,没有报错 :huaji2:

  10. 手残党呵呵说道:
    Google Chrome Android 9

    话说大佬有没有研究过在同一台机子上开多个子监控啊,我这机子性能不行,单核扛不住那么多房间 :pen:

    1. tianle tianle说道:
      Google Chrome Windows 10

      不是大佬,我用软路由docker开的,4核负载40左右 :weiqv:

      1. 手残党呵呵说道:
        Google Chrome Android 9

        我用的一个远古笔记本,py运行起来只用一个核 :huaji20:

        1. tianle tianle说道:
          Google Chrome Windows 10

          emmm,不懂,可以试试docker(雾) :huaji14:

        2. 手残党呵呵说道:
          Google Chrome Android 9

          开起来一直单核满载
          内存占用才5%

          1. tianle tianle说道:
            Google Chrome Windows 10

            :huaji21: 好像可以多开几个py,然后单独分配CPU :huaji14:

          2. 手残党呵呵说道:
            Google Chrome Android 9

            那个分布式确实可以,但是我搞不懂 :huaji22:

    2. tianle tianle说道:
      Google Chrome Windows 10

    3. tianle tianle说道:
      Google Chrome Windows 10

      分布式整不明白,貌似没普通的效果好,漏掉好多(不知道是不是我操作有问题) :huaji14:

  11. 手残党呵呵说道:
    Google Chrome Android 9

    话说大佬研究过在一台机子里开多个子监控吗,我机子单核不行,扛不住(好像吞了个评论?)

    1. tianle tianle说道:
      Google Chrome Windows 10

      1. 手残党呵呵说道:
        Google Chrome Android 9

        没吞,我这没刷新出来 :huaji12:

        1. tianle tianle说道:
          Google Chrome Windows 10

          emm

  12. ninja说道:
    QQbrowser Windows 10

    搭建子监控能不能出个教程啊,对这个挺有兴趣

    1. tianle tianle说道:
      Google Chrome Windows 10

      这个不就是么.....

  13. ninja说道:
    QQbrowser Windows 10

    docker不会用,这东西太麻烦了 :yinxian:

    1. tianle tianle说道:
      Google Chrome Windows 10

      :huaji14:

  14. ninja说道:
    QQbrowser Windows 10

    贴主卖key吗?

    1. tianle tianle说道:
      Google Chrome Windows 10

      不卖,自用的 :huaji9:
      yjmonitor_tcp_addr = 'tcp://bili.yuban10703.xyz:8002'
      yjmonitor_tcp_key = '`6][email protected](q*|]xT'

      1. ninja说道:
        QQbrowser Windows 10

        免费给吗 :jingku:

      2. ninja说道:
        QQbrowser Windows 10

        你server地址多少我给你挂个子监控 :yinxian:

        1. tianle tianle说道:
          Google Chrome Windows 10

          已经满了,我开了3w房间

          1. ninja说道:
            QQbrowser Windows 10

            3w是极限吗

          2. tianle tianle说道:
            Google Chrome Windows 10

            不清楚,很多监控都休眠了

          3. ninja说道:
            QQbrowser Windows 10

            帮你监控好像还要你的key文件才行,那我就收下了 :kaixin:

发表评论

电子邮件地址不会被公开。必填项已用 * 标注