aunly-bbot


Nameaunly-bbot JSON
Version 1.6.1 PyPI version JSON
download
home_page
Summary一个用于 QQ 群内高效推送哔哩哔哩 UP 动态及直播的机器人
upload_time2023-10-05 09:44:09
maintainer
docs_urlNone
author
requires_python>=3.9,<4.0
licenseAGPL3.0
keywords graia graiax bilibili qqbot grpc playwright fastapi bot openai chatgpt
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">

![BBot-Graia](https://socialify.git.ci/djkcyl/BBot-Graia/image?description=1&font=Inter&logo=https%3A%2F%2Fgithub.com%2Fdjkcyl%2FBBot%2Fblob%2Fmaster%2Flogo.png%3Fraw%3Dtrue&owner=1&pattern=Circuit%20Board&theme=Dark)
  
# BBot for Ariadne
![GitHub Repo stars](https://img.shields.io/github/stars/djkcyl/BBot-Graia?style=social)
![GitHub forks](https://img.shields.io/github/forks/djkcyl/BBot-Graia?style=social)

![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/djkcyl/BBot-Graia/release.yml?branch=master)
![GitHub release (latest by date)](https://img.shields.io/github/v/release/djkcyl/BBot-Graia?color=brightgreen)
![GitHub all releases](https://img.shields.io/github/downloads/djkcyl/BBot-Graia/total)
![Platform](https://img.shields.io/badge/platform-linux_%7C_windows-lightgrey)

[![License](https://img.shields.io/github/license/djkcyl/BBot-Graia)](https://github.com/djkcyl/BBot-Graia/blob/master/LICENSE)
[![wakatime](https://wakatime.com/badge/user/917ecbcb-b65c-4618-bb8d-9b2599e7a50f/project/a30b1fe9-dd2a-4539-b9fe-7ca124a2749e.svg)](https://wakatime.com/badge/user/917ecbcb-b65c-4618-bb8d-9b2599e7a50f/project/a30b1fe9-dd2a-4539-b9fe-7ca124a2749e)
![QQ](https://img.shields.io/badge/Tencent_QQ-2948531755-ff69b4)

![Python Version](https://img.shields.io/badge/python-3.9-blue)
[![pdm-managed](https://img.shields.io/badge/pdm-managed-blueviolet)](https://pdm.fming.dev)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/djkcyl/bbot)

![!](https://count.getloli.com/get/@BBot-Graia?theme=rule34)

基于 [Graia-Ariadne](../../../../GraiaProject/Ariadne) 搭建的高效、高性能哔哩哔哩推送 [QQ](../../../../project-mirai/mirai-api-http) 机器人

```text
BBot
B,是 26 个英文字母里的第二个,可意为我个人的第二个机器人
B,也代表 BiliBili,这个 Bot 将专注于哔哩哔哩的推送等服务
```

</div>

## 🤖 BBot 现在能干什么

- 订阅 UP 主 ~~废话~~
- 推送直播(开播及下播)~~废话~~
- 推送动态 ~~废话~~
- 视频链接解析

## 🌟 特色

- 大量使用并发 **gRPC 接口**,推送效率远超使用 REST Api 的哔哩哔哩机器人且目前未见有风控(-421)风险
- ~~使用登录和非登录两种方案,对于财大气粗的用户可以登录后再次提升效率~~ **不建议使用**
- 动态使用 Web 端截图,虽然会吃那么点性能,~~但这都是值得的~~
- 可自由配置是否在群内 @全体成员、对于直播和动态的分别控制等
- 可针对不同群聊对订阅的 UP 主进行昵称替换
- 可限制每个群可订阅的最大 UP 主数量
- 视频解析可使用 OpenAI ChatGPT 进行内容总结
- 内存少的话可以使用 Lite 版来减少部分依赖的占用

## 🛠️ 使用

pip 一键安装

```shell
 > pip install aunly-bbot
 > bbot 

   Usage: bbot [OPTIONS] COMMAND [ARGS]...

   Options:
   --help  Show this message and exit.

   Commands:
   config  BBot 配置向导
   run     运行 BBot

 > bbot run
```


**[BBot 使用文档](https://github.com/djkcyl/BBot-Graia/wiki)**

Docker 部署请查看 [这里](https://github.com/djkcyl/BBot-Graia/wiki/Docker)

## 📝 TODO

- [x] 增加群内配置功能
- [x] 增加菜单(/help 指令)
- [x] 使用数据库存储推送记录
- [x] 增加动态自动点赞功能
- [x] 支持 up 全名搜索
- [x] 增加可选的动态推送样式(App 样式)
- [x] 定时刷新 token,防止过期
- [x] 针对 Windows 和 Linux 平台,增加 Release 打包版本
- [x] 增加非登录式的推送更新逻辑
- [x] 更换 BiliBili 请求库为更成熟的 [BiliReq](../../../../SK-415/bilireq)
- [x] 可能会增加不需要浏览器的动态截图获取方式
- [x] 增加 Docker 部署方案
- [x] 自定义动态页字体
- [x] 上传至 PyPI 并支持 CLI 方式启动
- [x] 迁移至 PDM
- [x] 增加针对视频和专栏解析的内容总结,支持 ChatGPT 和 WordCloud 两种模式
- [x] 字体修改为网络获取,缩小程序体积
- [x] 增加 Lite 版本,不包含浏览器等依赖
- [ ] **增加 Web 端管理界面**
- [ ] 增加简单的推送数据分析及报告
- [ ] 丰富管理员指令
- [ ] 增加订阅组(同时订阅多个设定好的 up,如 `和谐有爱五人组`...)
- [ ] ~~可能会增加其他平台的推送~~


More...

## 🙏 感谢

- [HarukaBot](../../../../SK-415/HarukaBot) 学习对象
- [bilibili-API-collect](../../../../SocialSisterYi/bilibili-API-collect) 易姐收集的各种 BiliBili Api 及其提供的 gRPC Api 调用方案
- [ABot-Graia](../../../../djkcyl/ABot-Graia) 永远怀念最好的 ABot 🙏
- [Well404](https://space.bilibili.com/33138220/) 为本项目编写文档以及部署教程[视频](https://www.bilibili.com/video/BV16B4y137sx)
- [八萬](https://space.bilibili.com/8027000) 项目 Logo 画师

## ⏳ Star 趋势

[![Stargazers over time](https://starchart.cc/djkcyl/BBot-Graia.svg)](https://starchart.cc/djkcyl/BBot-Graia)


            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "aunly-bbot",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9,<4.0",
    "maintainer_email": "",
    "keywords": "graia,graiax,bilibili,qqbot,grpc,playwright,fastapi,bot,openai,chatgpt",
    "author": "",
    "author_email": "djkcyl <cyl@cyllive.cn>",
    "download_url": "https://files.pythonhosted.org/packages/43/7f/fc9103ee25522fb5564bfc65dcab05861986577420647c09bd8169931f35/aunly-bbot-1.6.1.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n\n![BBot-Graia](https://socialify.git.ci/djkcyl/BBot-Graia/image?description=1&font=Inter&logo=https%3A%2F%2Fgithub.com%2Fdjkcyl%2FBBot%2Fblob%2Fmaster%2Flogo.png%3Fraw%3Dtrue&owner=1&pattern=Circuit%20Board&theme=Dark)\n  \n# BBot for Ariadne\n![GitHub Repo stars](https://img.shields.io/github/stars/djkcyl/BBot-Graia?style=social)\n![GitHub forks](https://img.shields.io/github/forks/djkcyl/BBot-Graia?style=social)\n\n![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/djkcyl/BBot-Graia/release.yml?branch=master)\n![GitHub release (latest by date)](https://img.shields.io/github/v/release/djkcyl/BBot-Graia?color=brightgreen)\n![GitHub all releases](https://img.shields.io/github/downloads/djkcyl/BBot-Graia/total)\n![Platform](https://img.shields.io/badge/platform-linux_%7C_windows-lightgrey)\n\n[![License](https://img.shields.io/github/license/djkcyl/BBot-Graia)](https://github.com/djkcyl/BBot-Graia/blob/master/LICENSE)\n[![wakatime](https://wakatime.com/badge/user/917ecbcb-b65c-4618-bb8d-9b2599e7a50f/project/a30b1fe9-dd2a-4539-b9fe-7ca124a2749e.svg)](https://wakatime.com/badge/user/917ecbcb-b65c-4618-bb8d-9b2599e7a50f/project/a30b1fe9-dd2a-4539-b9fe-7ca124a2749e)\n![QQ](https://img.shields.io/badge/Tencent_QQ-2948531755-ff69b4)\n\n![Python Version](https://img.shields.io/badge/python-3.9-blue)\n[![pdm-managed](https://img.shields.io/badge/pdm-managed-blueviolet)](https://pdm.fming.dev)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/djkcyl/bbot)\n\n![!](https://count.getloli.com/get/@BBot-Graia?theme=rule34)\n\n\u57fa\u4e8e [Graia-Ariadne](../../../../GraiaProject/Ariadne) \u642d\u5efa\u7684\u9ad8\u6548\u3001\u9ad8\u6027\u80fd\u54d4\u54e9\u54d4\u54e9\u63a8\u9001 [QQ](../../../../project-mirai/mirai-api-http) \u673a\u5668\u4eba\n\n```text\nBBot\nB\uff0c\u662f 26 \u4e2a\u82f1\u6587\u5b57\u6bcd\u91cc\u7684\u7b2c\u4e8c\u4e2a\uff0c\u53ef\u610f\u4e3a\u6211\u4e2a\u4eba\u7684\u7b2c\u4e8c\u4e2a\u673a\u5668\u4eba\nB\uff0c\u4e5f\u4ee3\u8868 BiliBili\uff0c\u8fd9\u4e2a Bot \u5c06\u4e13\u6ce8\u4e8e\u54d4\u54e9\u54d4\u54e9\u7684\u63a8\u9001\u7b49\u670d\u52a1\n```\n\n</div>\n\n## \ud83e\udd16 BBot \u73b0\u5728\u80fd\u5e72\u4ec0\u4e48\n\n- \u8ba2\u9605 UP \u4e3b ~~\u5e9f\u8bdd~~\n- \u63a8\u9001\u76f4\u64ad\uff08\u5f00\u64ad\u53ca\u4e0b\u64ad\uff09~~\u5e9f\u8bdd~~\n- \u63a8\u9001\u52a8\u6001 ~~\u5e9f\u8bdd~~\n- \u89c6\u9891\u94fe\u63a5\u89e3\u6790\n\n## \ud83c\udf1f \u7279\u8272\n\n- \u5927\u91cf\u4f7f\u7528\u5e76\u53d1 **gRPC \u63a5\u53e3**\uff0c\u63a8\u9001\u6548\u7387\u8fdc\u8d85\u4f7f\u7528 REST Api \u7684\u54d4\u54e9\u54d4\u54e9\u673a\u5668\u4eba\u4e14\u76ee\u524d\u672a\u89c1\u6709\u98ce\u63a7\uff08-421\uff09\u98ce\u9669\n- ~~\u4f7f\u7528\u767b\u5f55\u548c\u975e\u767b\u5f55\u4e24\u79cd\u65b9\u6848\uff0c\u5bf9\u4e8e\u8d22\u5927\u6c14\u7c97\u7684\u7528\u6237\u53ef\u4ee5\u767b\u5f55\u540e\u518d\u6b21\u63d0\u5347\u6548\u7387~~ **\u4e0d\u5efa\u8bae\u4f7f\u7528**\n- \u52a8\u6001\u4f7f\u7528 Web \u7aef\u622a\u56fe\uff0c\u867d\u7136\u4f1a\u5403\u90a3\u4e48\u70b9\u6027\u80fd\uff0c~~\u4f46\u8fd9\u90fd\u662f\u503c\u5f97\u7684~~\n- \u53ef\u81ea\u7531\u914d\u7f6e\u662f\u5426\u5728\u7fa4\u5185 @\u5168\u4f53\u6210\u5458\u3001\u5bf9\u4e8e\u76f4\u64ad\u548c\u52a8\u6001\u7684\u5206\u522b\u63a7\u5236\u7b49\n- \u53ef\u9488\u5bf9\u4e0d\u540c\u7fa4\u804a\u5bf9\u8ba2\u9605\u7684 UP \u4e3b\u8fdb\u884c\u6635\u79f0\u66ff\u6362\n- \u53ef\u9650\u5236\u6bcf\u4e2a\u7fa4\u53ef\u8ba2\u9605\u7684\u6700\u5927 UP \u4e3b\u6570\u91cf\n- \u89c6\u9891\u89e3\u6790\u53ef\u4f7f\u7528 OpenAI ChatGPT \u8fdb\u884c\u5185\u5bb9\u603b\u7ed3\n- \u5185\u5b58\u5c11\u7684\u8bdd\u53ef\u4ee5\u4f7f\u7528 Lite \u7248\u6765\u51cf\u5c11\u90e8\u5206\u4f9d\u8d56\u7684\u5360\u7528\n\n## \ud83d\udee0\ufe0f \u4f7f\u7528\n\npip \u4e00\u952e\u5b89\u88c5\n\n```shell\n > pip install aunly-bbot\n > bbot \n\n   Usage: bbot [OPTIONS] COMMAND [ARGS]...\n\n   Options:\n   --help  Show this message and exit.\n\n   Commands:\n   config  BBot \u914d\u7f6e\u5411\u5bfc\n   run     \u8fd0\u884c BBot\n\n > bbot run\n```\n\n\n**[BBot \u4f7f\u7528\u6587\u6863](https://github.com/djkcyl/BBot-Graia/wiki)**\n\nDocker \u90e8\u7f72\u8bf7\u67e5\u770b [\u8fd9\u91cc](https://github.com/djkcyl/BBot-Graia/wiki/Docker)\n\n## \ud83d\udcdd TODO\n\n- [x] \u589e\u52a0\u7fa4\u5185\u914d\u7f6e\u529f\u80fd\n- [x] \u589e\u52a0\u83dc\u5355\uff08/help \u6307\u4ee4\uff09\n- [x] \u4f7f\u7528\u6570\u636e\u5e93\u5b58\u50a8\u63a8\u9001\u8bb0\u5f55\n- [x] \u589e\u52a0\u52a8\u6001\u81ea\u52a8\u70b9\u8d5e\u529f\u80fd\n- [x] \u652f\u6301 up \u5168\u540d\u641c\u7d22\n- [x] \u589e\u52a0\u53ef\u9009\u7684\u52a8\u6001\u63a8\u9001\u6837\u5f0f\uff08App \u6837\u5f0f\uff09\n- [x] \u5b9a\u65f6\u5237\u65b0 token\uff0c\u9632\u6b62\u8fc7\u671f\n- [x] \u9488\u5bf9 Windows \u548c Linux \u5e73\u53f0\uff0c\u589e\u52a0 Release \u6253\u5305\u7248\u672c\n- [x] \u589e\u52a0\u975e\u767b\u5f55\u5f0f\u7684\u63a8\u9001\u66f4\u65b0\u903b\u8f91\n- [x] \u66f4\u6362 BiliBili \u8bf7\u6c42\u5e93\u4e3a\u66f4\u6210\u719f\u7684 [BiliReq](../../../../SK-415/bilireq)\n- [x] \u53ef\u80fd\u4f1a\u589e\u52a0\u4e0d\u9700\u8981\u6d4f\u89c8\u5668\u7684\u52a8\u6001\u622a\u56fe\u83b7\u53d6\u65b9\u5f0f\n- [x] \u589e\u52a0 Docker \u90e8\u7f72\u65b9\u6848\n- [x] \u81ea\u5b9a\u4e49\u52a8\u6001\u9875\u5b57\u4f53\n- [x] \u4e0a\u4f20\u81f3 PyPI \u5e76\u652f\u6301 CLI \u65b9\u5f0f\u542f\u52a8\n- [x] \u8fc1\u79fb\u81f3 PDM\n- [x] \u589e\u52a0\u9488\u5bf9\u89c6\u9891\u548c\u4e13\u680f\u89e3\u6790\u7684\u5185\u5bb9\u603b\u7ed3\uff0c\u652f\u6301 ChatGPT \u548c WordCloud \u4e24\u79cd\u6a21\u5f0f\n- [x] \u5b57\u4f53\u4fee\u6539\u4e3a\u7f51\u7edc\u83b7\u53d6\uff0c\u7f29\u5c0f\u7a0b\u5e8f\u4f53\u79ef\n- [x] \u589e\u52a0 Lite \u7248\u672c\uff0c\u4e0d\u5305\u542b\u6d4f\u89c8\u5668\u7b49\u4f9d\u8d56\n- [ ] **\u589e\u52a0 Web \u7aef\u7ba1\u7406\u754c\u9762**\n- [ ] \u589e\u52a0\u7b80\u5355\u7684\u63a8\u9001\u6570\u636e\u5206\u6790\u53ca\u62a5\u544a\n- [ ] \u4e30\u5bcc\u7ba1\u7406\u5458\u6307\u4ee4\n- [ ] \u589e\u52a0\u8ba2\u9605\u7ec4\uff08\u540c\u65f6\u8ba2\u9605\u591a\u4e2a\u8bbe\u5b9a\u597d\u7684 up\uff0c\u5982 `\u548c\u8c10\u6709\u7231\u4e94\u4eba\u7ec4`...\uff09\n- [ ] ~~\u53ef\u80fd\u4f1a\u589e\u52a0\u5176\u4ed6\u5e73\u53f0\u7684\u63a8\u9001~~\n\n\nMore...\n\n## \ud83d\ude4f \u611f\u8c22\n\n- [HarukaBot](../../../../SK-415/HarukaBot) \u5b66\u4e60\u5bf9\u8c61\n- [bilibili-API-collect](../../../../SocialSisterYi/bilibili-API-collect) \u6613\u59d0\u6536\u96c6\u7684\u5404\u79cd BiliBili Api \u53ca\u5176\u63d0\u4f9b\u7684 gRPC Api \u8c03\u7528\u65b9\u6848\n- [ABot-Graia](../../../../djkcyl/ABot-Graia) \u6c38\u8fdc\u6000\u5ff5\u6700\u597d\u7684 ABot \ud83d\ude4f\n- [Well404](https://space.bilibili.com/33138220/) \u4e3a\u672c\u9879\u76ee\u7f16\u5199\u6587\u6863\u4ee5\u53ca\u90e8\u7f72\u6559\u7a0b[\u89c6\u9891](https://www.bilibili.com/video/BV16B4y137sx)\n- [\u516b\u842c](https://space.bilibili.com/8027000) \u9879\u76ee Logo \u753b\u5e08\n\n## \u23f3 Star \u8d8b\u52bf\n\n[![Stargazers over time](https://starchart.cc/djkcyl/BBot-Graia.svg)](https://starchart.cc/djkcyl/BBot-Graia)\n\n",
    "bugtrack_url": null,
    "license": "AGPL3.0",
    "summary": "\u4e00\u4e2a\u7528\u4e8e QQ \u7fa4\u5185\u9ad8\u6548\u63a8\u9001\u54d4\u54e9\u54d4\u54e9 UP \u52a8\u6001\u53ca\u76f4\u64ad\u7684\u673a\u5668\u4eba",
    "version": "1.6.1",
    "project_urls": {
        "documentation": "https://github.com/djkcyl/BBot-Graia/blob/master/readme.md",
        "homepage": "https://github.com/djkcyl/BBot-Graia",
        "repository": "https://github.com/djkcyl/BBot-Graia/tree/master/bbot"
    },
    "split_keywords": [
        "graia",
        "graiax",
        "bilibili",
        "qqbot",
        "grpc",
        "playwright",
        "fastapi",
        "bot",
        "openai",
        "chatgpt"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5585293734bc89a37debcd745ed7cf4abc8a3809b30e96db8b4b56c710dbd741",
                "md5": "a08dc8ed70c8bd1dbab0589ca689d2f5",
                "sha256": "5e38558968f961546d376799f3c445ea186bcb7679c07b24f3c959d58737b5a3"
            },
            "downloads": -1,
            "filename": "aunly_bbot-1.6.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a08dc8ed70c8bd1dbab0589ca689d2f5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9,<4.0",
            "size": 425547,
            "upload_time": "2023-10-05T09:44:07",
            "upload_time_iso_8601": "2023-10-05T09:44:07.774304Z",
            "url": "https://files.pythonhosted.org/packages/55/85/293734bc89a37debcd745ed7cf4abc8a3809b30e96db8b4b56c710dbd741/aunly_bbot-1.6.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "437ffc9103ee25522fb5564bfc65dcab05861986577420647c09bd8169931f35",
                "md5": "dac9d4605438985791102b681d1c97c7",
                "sha256": "4e933c07f81a2db10edb38e0e94901aaaa66b7aa94532d081df676f0c145ab99"
            },
            "downloads": -1,
            "filename": "aunly-bbot-1.6.1.tar.gz",
            "has_sig": false,
            "md5_digest": "dac9d4605438985791102b681d1c97c7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9,<4.0",
            "size": 382510,
            "upload_time": "2023-10-05T09:44:09",
            "upload_time_iso_8601": "2023-10-05T09:44:09.337929Z",
            "url": "https://files.pythonhosted.org/packages/43/7f/fc9103ee25522fb5564bfc65dcab05861986577420647c09bd8169931f35/aunly-bbot-1.6.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-10-05 09:44:09",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "djkcyl",
    "github_project": "BBot-Graia",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "aunly-bbot"
}
        
Elapsed time: 0.17218s