Coder Social home page Coder Social logo

kyomotoi / atri Goto Github PK

View Code? Open in Web Editor NEW
718.0 13.0 88.0 37.28 MB

A project for ATRI, use go-cqhttp and Nonebot2.

Home Page: https://atri.imki.moe

License: GNU General Public License v3.0

Python 99.82% Dockerfile 0.18%
nonebot qqbot cqhttp atri go-cqhttp nonebot2

atri's Introduction

👋 Here is ATRI - 一个厨力项目

time tracker

アトリは、高性能ですから!

为🐧即时聊天工具中复现一只优秀的功能性机器人是本项目的目标.

📌 声明 | Declarations

一切开发旨在学习,请勿用于非法用途

本项目名称、灵感均来自 ANIPLEX 发行的 ATRI-My Dear Moments-.

本项目中所使用的任何有关 ATRI 的图标、LOGO,解释权、著作权均归 ANIPLEX. 你可以在此查看相关内容.

✨ 特性概览 | Features

📱 功能概览 | Services Overview

涩涩
  • 文爱
  • 涩图
  • 涩图嗅探
  • 涩批翻译机
实用
  • 在线运行代码
  • 伪造转发内容
  • 以图搜图
  • 以图搜番
  • ATRI语(加密、解密,改自rcnb
  • 简单骰子
  • b站动态订阅
  • Twitter 动态订阅
  • 谁是卷王 (基于 wakatime)
  • 自定义词库(多种方式匹配)
娱乐
  • 看不懂的笑话
  • 今天吃什么
  • 老婆!
其它
  • B站小程序解析
  • 状态查看
TODO

被勾上的即已大致完成,但仍需优化

  • 网页控制台
  • Twitter助手
  • RSS订阅
  • 冷重启
  • 进裙验证(问题可自定义)
  • 好感度系统

🚀 开始部署 | Getting Started

请参考文档: 部署项目

📖 文档 | Documentation

所有公开的信息都可在 atri.imki.moe 获取. 使用 VitePress 构建.

文档仓库

⚡️ 性能表现 | Performance

得益于强大的 NoneBot 2go-cqhttp,真正意义上实现:全平台运行、运行时资源占用极少.

🔊 更新日志 | Changelog

版本更新请参考此处.

小改动请参考以往的 commit.

❤️ 特别感谢 | Acknowledgments

Bot Universe: Onebot标准

Mrs4s: go-cqhttp

NoneBot: NoneBot2

Richard Chien, Mnixry and go-cqhttp Developers.

JetBrains: 为本项目提供 PyCharm 等 IDE 的授权

以及以下朋友们!

排名不分先后

  • 50861735 11.00 CNY
  • 1072324725 17.00 CNY
  • AfdianUser_quGy 5.00 CNY
  • 1752179928 56.14 CNY
  • Mikasa 66.00 CNY
  • SkipM4 32.00 CNY
  • Chunk7 33.00 CNY
  • Wwwwwwalnut 10.00 CNY
  • 演变 5.00 CNY
  • YuimeC 23.33 CNY
  • Ohdmire 20.00 CNY
  • TerRALi 23.45 CNY
  • 虾仁 21.00 CNY
  • Tianli 11.00 CNY
  • linx 33.00 CNY
  • 屁东 5.00 CNY
  • A_Kyuu 200.00 CNY
  • Copper_Sulfate 11.00 CNY
  • YQ233 11.00 CNY
  • Wuid 7.50 CNY
  • AfdianUser_veuW 5.00 CNY
  • KadiASD 7.50 CNY
  • (°ω°)ノ" 11.45 CNY
  • lanx 6.66 CNY
  • Azazel_BBF 33.00 CNY
  • hongshi 10.00 CNY
  • 这是01 45.14 CNY

Total: 703.17 CNY. 25 sponsors.

👥 贡献 | Contribution

如果你喜欢本项目,可以请我喝杯红茶.

如果你有想法、有能力,欢迎:

在提交 Issue、Pull request 前,请先阅读此内容.

📄 许可 | License

本项目使用 GPLv3.

意味着你可以运行本项目,并向你的用户提供服务,如后续有对本项目源码的修改,你需要向用户公开修改后的此项目的源码.

atri's People

Contributors

codacy-badger avatar cvb011 avatar dependabot[bot] avatar dtlnor avatar kanrichan avatar komoridev avatar kyomotoi avatar mnixry avatar shudorcl avatar web-flow avatar xhlin-gamer avatar yangrq1018 avatar yuki-asuuna avatar yume233 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

atri's Issues

控制台报错

描述错误 | Describe the bug
使用/con.auth指令报错

呜——出错了...请反馈维护者
来自: 控制台
信息: UnkErr JSONDecodeError
追踪ID: f0eSV9Y7

如何复现 | To Reproduce

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

错误预期行为 | Expected behavior
请尽可能地使用简洁语言描述,以方便开发者快速定位重点.

截图 | Screenshots
image

image
操作环境 | Desktop:

  • OS: ubuntu20.04
  • Platform Info: [e.g. 2c2g 30g (2 core cpu 2g memories 30g storage)]
  • ATRI Version: [e.g. YHN-001-A05.fix1]
  • Runtime Area: [e.g. HongKong]

补充内容 | Additional context
你可以在此添加其它说明,或向我们提供你的解决方案.

/app/ATRI/plugins/console/driver/__init__.py中driver未定义

描述错误 | Describe the bug
之前装在本机上,今天刚换的docker版,
/app/ATRI/plugins/console/driver/init.py 有错误,看了下commit,是否和最近的更新有关?

如何复现 | To Reproduce
告诉我们该错误是如何触发的:
执行docker-compose up后就这样了,docker-compose.yml 和 comfig.yml 已配置

截图 | Screenshots
image

操作环境 | Desktop:

  • OS: omv6.0(基于debian11)
  • Platform Info: i5-7200u 4g
  • ATRI Version: [e.g. YHN-001-A05.fix1]
  • Runtime Area: CN

部署卡住

亲爱的开发者,
我也想部署一个可可爱爱的ATRI,可是我在 debian 上从昨晚折腾到了现在,期间出现的报错我都尽可能通过搜索引擎解决或排除了。
现在运行 sudo docker-compose up会一直一直卡在某一个步骤。
运行之初的输出:
33
运行十几分钟后的输出:
22

除了用 docker 的方法之外,我也试过 linux 的方法,在输出一长串很多很多信息之后,最后提示启动失败。
配置文件里download_domain留空、更换python镜像源、更新python版本我都尝试过了。请指教。
如果有需要补充的内容烦请告知,谢谢。

setu.py模块的反爬虫问题与疑似解决方法

在尝试使用setu.py模块时,遇到了无回复的问题。经检查Mirai的运行log,有形如
18:00:22 [ERROR] [CQHTTPMirai] java.io.IOException: Server returned HTTP response code: 403 for URL: https://XXX.jpg at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1900) ...
的报错。对比此issue中提到的现象,初步断定为该pixiv反代网站的反爬虫机制返回了403。

经过测试,对例如url = 'https://i.pixiv.cat/img-original/img/2017/08/20/21/44/35/64531410_p0.jpg'的api返回url,替换为new_url = 'https://pixiv.cat/'+url.split('/')[-1].split('_')[0]+'.jpg'可暂时性解决此问题。但本方法未补全图片分页信息,且随时有被反爬虫机制再次屏蔽的可能性。

无法安装插件,插件报错

描述错误 | Describe the bug
ModuleNotFoundError: No module named 'nonebot_plugin_status'

如何复现 | To Reproduce
告诉我们该错误是如何触发的:
添加插件发送之后,我再用nonebot_plugin_status后发生错误,但返回是完成了,实际上并没有完成
错误预期行为 | Expected behavior
请尽可能地使用简洁语言描述,以方便开发者快速定位重点.

截图 | Screenshots
可以的话,请提供相关截图.

操作环境 | Desktop:

  • OS: [e.g. Linux]
  • Platform Info: [e.g. 2c2g 30g (2 core cpu 2g memories 30g storage)]
  • ATRI Version: [e.g. YHN-001-A05.fix1]
  • Runtime Area: [e.g. HongKong]

补充内容 | Additional context
你可以在此添加其它说明,或向我们提供你的解决方案.
20230713-15.log
20230713-16.log

使用pipenv构建独立的安装与运行环境

描述你的大致想法 | Describe your idea
我在使用termux作为终端,并且使用的是python3.8.15,这个无法安装poetry。是否可以使用相对来说更易安装的pipenv来构建独立的安装与运行环境呢?

描述你想要的解决方案 | Describe the solution you'd like
使用pipenv来构建独立的安装与运行环境,规避无法安装poetry的问题。

操作环境 | Android

  • OS: Linux-Termux
  • Platform Info: 8c8g 256g
  • Runtime Area:Henan在我手机上跑的

补充内容 | Additional context

pipenv是基于pip的Python包管理工具,它和pip的用法非常相似,可以看作pip的加强版,它的出现解决了旧的pip+virtualenv+requirements.txt的工作方式的弊端。具体来说,它是pip、Pipfile和Virtualenv的结合体,它让包安装、包依赖管理和虚拟环境管理更加方便,使用它可以实现高效的Python项目开发工作流。

当然pipenv也有一些自己存在的问题:

virtualenv的使用存在一定的问题:
由于跨平台的使用不太一致,有时候处理包之间的依赖总存在问题。
可能需要手动安装/删除某些特定版本的包
存在多个环境(开发环境、测试环境、生产环境)时,依赖包目录文件requirements.txt 会需要存在多个,无比繁琐
要定期更新 requirements.txt,保持项目环境的一致性

但是总归有另一种解决方案~

setu功能无法关闭

经检查,是在判断功能关闭处出现问题

plugin_name_2 = "anime-setu"
key_LoliconAPI = config['api']['LoliconAPI']
setu_type = 1  # setu-type: 1(local), 2(url: https://api.lolicon.app/#/setu) default: 1(local)

setus = on_regex(
    r"来[点丶张份副个幅][涩色瑟][图圖]|[涩色瑟][图圖]来|[涩色瑟][图圖][gkd|GKD|搞快点]|[gkd|GKD|搞快点][涩色瑟][图圖]",
    rule=check_banlist() & check_switch(plugin_name_1))

应修改为

rule=check_banlist() & check_switch(plugin_name_2)

配置文件报错?

描述问题 | Describe the question
参照配置本项目中提供内容配置后,运行报错。报错代码如下:

(atri-py3.8) :/data/data/com.termux/files/home/ATRI # python main.py
Traceback (most recent call last):
  File "main.py", line 3, in <module>
    import ATRI
  File "/data/data/com.termux/files/home/ATRI/ATRI/__init__.py", line 13, in <module>
    conf = __conf.parse()
  File "/data/data/com.termux/files/home/ATRI/ATRI/configs/config.py", line 38, in parse
    return ConfigModel.parse_obj(self.config)
  File "/data/data/com.termux/files/home/.suroot/.cache/pypoetry/virtualenvs/atri-IWL-4cR8-py3.8/lib/python3.8/site-packages/pydantic/main.py", line 527, in parse_obj
    return cls(**obj)
  File "/data/data/com.termux/files/home/.suroot/.cache/pypoetry/virtualenvs/atri-IWL-4cR8-py3.8/lib/python3.8/site-packages/pydantic/main.py", line 342, in __init__
    raise validation_error
pydantic.error_wrappers.ValidationError: 2 validation errors for ConfigModel
WithGoCQHTTP -> accounts -> 0 -> uin
  value is not a valid integer (type=type_error.integer)
WithGoCQHTTP -> accounts -> 0 -> protocol
  value is not a valid integer (type=type_error.integer)

百度了以后,说是文本格式的错误信息,没有解决的头绪。
补充内容 | Additional context
报错相关的WithGoCQHTTP配置填写如下(部分敏感内容做打码处理):

WithGoCQHTTP:
  enabled: false
  accounts:
    - uin: {102****696}
      password: "{password}"
      protocol: {0}
  
  download_domain: "{download_domain}"
  download_version: "v1.0.0-rc4"

  gocq_webui_username: "ATRI"
  gocq_webui_password: "ATRI1314000***"

没有打开“使用内置gocqhttp”导致的参数问题

描述问题 | Describe the question
请尽可能地使用简洁语言描述,以方便开发者快速定位重点.
进入虚拟环境运行python main.py报错如下

(atri-py3.8) ubuntu@VM-8-10-ubuntu:~/ATRI$ python main.py
Traceback (most recent call last):
File "main.py", line 3, in
import ATRI
File "/home/ubuntu/ATRI/ATRI/init.py", line 13, in
conf = __conf.parse()
File "/home/ubuntu/ATRI/ATRI/configs/config.py", line 38, in parse
return ConfigModel.parse_obj(self.config)
File "pydantic/main.py", line 526, in pydantic.main.BaseModel.parse_obj
File "pydantic/main.py", line 341, in pydantic.main.BaseModel.init
pydantic.error_wrappers.ValidationError: 2 validation errors for ConfigModel
WithGoCQHTTP -> accounts -> 0 -> uin
value is not a valid integer (type=type_error.integer)
WithGoCQHTTP -> accounts -> 0 -> protocol
value is not a valid integer (type=type_error.integer)

疑似是因为我没有打开“使用内置gocqhttp”导致的参数问题
(把花括号去了然后装模做样输点数据就能跑了)
这算不算bug()

补充内容 | Additional context
你可以在此添加其它说明.

该目标不存在实例

问题描述
bot正常启动,但无法进入控制台
私聊bot无反应
token填写无误

日志截图
QQ截图20230130130545
QQ截图20230130130507
QQ截图20230130130442

是否无法与其他nonebot的机器人同时使用?

描述问题 | Describe the question
RT,在解决了一大票的python包的问题后,我发现无法启动bot,是因为无法和其他同样使用nonebot框架的机器人一同使用吗?

补充内容 | Additional context
启动报错如下:

ATRI | 02-12 16:37:44 | ERROR uvicorn >> Traceback (most recent call last):
  File "/data/data/com.termux/files/home/.suroot/.cache/pypoetry/virtualenvs/atri-IWL-4cR8-py3.8/lib/python3.8/site-packages/starlette/routing.py", line 671, in lifespan
    async with self.lifespan_context(app):
  File "/data/data/com.termux/files/home/.suroot/.cache/pypoetry/virtualenvs/atri-IWL-4cR8-py3.8/lib/python3.8/site-packages/starlette/routing.py", line 566, in __aenter__
    await self._router.startup()
  File "/data/data/com.termux/files/home/.suroot/.cache/pypoetry/virtualenvs/atri-IWL-4cR8-py3.8/lib/python3.8/site-packages/starlette/routing.py", line 650, in startup
    handler()
  File "/data/data/com.termux/files/home/ATRI/ATRI/plugins/console/driver/__init__.py", line 51, in init_driver
    register_driver(driver())  # type: ignore
  File "/data/data/com.termux/files/home/ATRI/ATRI/plugins/console/driver/__init__.py", line 19, in register_driver
    app.add_middleware(
  File "/data/data/com.termux/files/home/.suroot/.cache/pypoetry/virtualenvs/atri-IWL-4cR8-py3.8/lib/python3.8/site-packages/starlette/applications.py", line 135, in add_middleware
    raise RuntimeError("Cannot add middleware after an application has started")
RuntimeError: Cannot add middleware after an application has started

docker启动报错

nonebot  | ATRI | 04-01 05:22:08 | INFO uvicorn >> Waiting for application startup.
nonebot  | ATRI | 04-01 05:22:08 | ERROR uvicorn >> Traceback (most recent call last):
nonebot  |   File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 621, in lifespan
nonebot  |     async with self.lifespan_context(app):
nonebot  |   File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 518, in __aenter__
nonebot  |     await self._router.startup()
nonebot  |   File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 598, in startup
nonebot  |     await handler()
nonebot  |   File "/app/ATRI/utils/apscheduler.py", line 22, in _start_scheduler
nonebot  |     scheduler.start()
nonebot  |   File "/usr/local/lib/python3.9/site-packages/apscheduler/schedulers/asyncio.py", line 45, in start
nonebot  |     super(AsyncIOScheduler, self).start(paused)
nonebot  |   File "/usr/local/lib/python3.9/site-packages/apscheduler/schedulers/base.py", line 167, in start
nonebot  |     self._real_add_job(job, jobstore_alias, replace_existing)
nonebot  |   File "/usr/local/lib/python3.9/site-packages/apscheduler/schedulers/base.py", line 863, in _real_add_job
nonebot  |     replacements['next_run_time'] = job.trigger.get_next_fire_time(None, now)
nonebot  |   File "/usr/local/lib/python3.9/site-packages/apscheduler/triggers/combining.py", line 55, in get_next_fire_time
nonebot  |     fire_times = [trigger.get_next_fire_time(previous_fire_time, now)
nonebot  |   File "/usr/local/lib/python3.9/site-packages/apscheduler/triggers/combining.py", line 55, in <listcomp>
nonebot  |     fire_times = [trigger.get_next_fire_time(previous_fire_time, now)
nonebot  | TypeError: get_next_fire_time() takes 2 positional arguments but 3 were given
nonebot  | 
nonebot  | ATRI | 04-01 05:22:08 | ERROR uvicorn >> Application startup failed. Exiting.
nonebot exited with code 3

无法poetry install

在命令行键入poetry install时,出现 “ • Installing httptools (0.5.0): Failed”字样,键入poetry lock修复后依然存在该问题
CZ6W)R U)FHR1D7O2CSV7

**操作环境 | Desktop:Legion Y9000P IAH7H

  • OS: Windows 11 家庭中文版
    • Platform Info: 14c16g 512g
  • ATRI Version: YHN-001-A07
  • Runtime Area: Shanghai

色图API是不是应该更新一下啊

目前已将 API 迁移出我个人的服务器并转用某些白嫖服务,因此我将限制放开了,不再需要 apikey 并且一次允许返回的数量增加了,但这也意味着可能存在一些来自服务商的隐性限制

如何单独将 ATRI 的一些插件添加到其它 bot 中使用?

描述问题 | Describe the question

如题,因为 ATRI 实在是太可爱了,但我又有自己的 bot,所以我想将该项目的一部分插件为我自己所用

补充内容 | Additional context

故我将这些插件的文件夹加入到我自己的 bot 的 src/plugins 目录下,却发现无法正常使用。

我又在此基础上将您项目中的 ATRI 文件夹添加到了我 bot 的 根目录 与 src/plugins 目录下,虽然可以勉强运行,但仍存在许多问题,如“老婆”功能意外阻断了我原有的插件、“以图搜番”功能无法正常使用、“涩图嗅探”功能无法正常使用、enssial.py 内的功能无法正常调用等等。我查阅了文档,但没有相关的介绍。

我的 bot 项目为 NoNormalCreeper/Kori-Bot ,您可以在此处详细查看我的目录结构。


希望您能在百忙之中 牺牲打游戏的时间来帮助我 一下,非常感谢您的指导!

未知错误->连接超时

{
"track_id": "rpsPw1hc",
"prompt": "Unknown ERROR->ConnectTimeout",
"time": "2022-06-08 19:42:49",
"content": "Traceback (most recent call last):\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\backends\asyncio.py", line 101, in connect_tcp\n stream: anyio.abc.ByteStream = await anyio.connect_tcp(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_core\_sockets.py", line 218, in connect_tcp\n await event.wait()\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_backends\_asyncio.py", line 662, in aexit\n raise exceptions[0]\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_core\_sockets.py", line 164, in try_connect\n stream = await asynclib.connect_tcp(remote_host, remote_port, local_address)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_backends\_asyncio.py", line 1691, in connect_tcp\n await get_running_loop().create_connection(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\asyncio\base_events.py", line 1041, in create_connection\n sock = await self._connect_sock(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\asyncio\base_events.py", line 955, in _connect_sock\n await self.sock_connect(sock, address)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\asyncio\proactor_events.py", line 702, in sock_connect\n return await self._proactor.connect(sock, address)\nasyncio.exceptions.CancelledError\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\_exceptions.py", line 8, in map_exceptions\n yield\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\backends\asyncio.py", line 101, in connect_tcp\n stream: anyio.abc.ByteStream = await anyio.connect_tcp(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\anyio\_core\_tasks.py", line 118, in exit\n raise TimeoutError\nTimeoutError\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_transports\default.py", line 60, in map_httpcore_exceptions\n yield\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_transports\default.py", line 353, in handle_async_request\n resp = await self._pool.handle_async_request(req)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\_async\connection_pool.py", line 253, in handle_async_request\n raise exc\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\_async\connection_pool.py", line 237, in handle_async_request\n response = await connection.handle_async_request(request)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\_async\connection.py", line 86, in handle_async_request\n raise exc\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\_async\connection.py", line 63, in handle_async_request\n stream = await self._connect(request)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\_async\connection.py", line 111, in _connect\n stream = await self._network_backend.connect_tcp(**kwargs)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\backends\auto.py", line 23, in connect_tcp\n return await self._backend.connect_tcp(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\backends\asyncio.py", line 101, in connect_tcp\n stream: anyio.abc.ByteStream = await anyio.connect_tcp(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\contextlib.py", line 137, in exit\n self.gen.throw(typ, value, traceback)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpcore\_exceptions.py", line 12, in map_exceptions\n raise to_exc(exc)\nhttpcore.ConnectTimeout\n\nThe above exception was the direct cause of the following exception:\n\nTraceback (most recent call last):\n File "C:\Users\Administrator\Desktop\ATRI-main\ATRI\exceptions.py", line 98, in _track_error\n raise exception\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\nonebot\message.py", line 196, in _run_matcher\n await matcher.run(bot, event, state, stack, dependency_cache)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\nonebot\internal\matcher.py", line 668, in run\n await self.simple_run(bot, event, state, stack, dependency_cache)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\nonebot\internal\matcher.py", line 635, in simple_run\n await handler(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\nonebot\dependencies\init.py", line 92, in call\n return await self.call(**values)\n File "C:\Users\Administrator\Desktop\ATRI-main\ATRI\plugins\kimo\init.py", line 22, in _chat\n repo = await Kimo().deal(msg, user_id)\n File "C:\Users\Administrator\Desktop\ATRI-main\ATRI\plugins\kimo\data_source.py", line 112, in deal\n data = await cls._load_data()\n File "C:\Users\Administrator\Desktop\ATRI-main\ATRI\plugins\kimo\data_source.py", line 50, in _load_data\n await cls._generate_data()\n File "C:\Users\Administrator\Desktop\ATRI-main\ATRI\plugins\kimo\data_source.py", line 37, in _generate_data\n data = await cls._request(KIMO_URL)\n File "C:\Users\Administrator\Desktop\ATRI-main\ATRI\plugins\kimo\data_source.py", line 27, in _request\n res = await request.get(url)\n File "C:\Users\Administrator\Desktop\ATRI-main\ATRI\utils\request.py", line 15, in get\n return await client.get(url, **kwargs)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_client.py", line 1729, in get\n return await self.request(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_client.py", line 1506, in request\n return await self.send(request, auth=auth, follow_redirects=follow_redirects)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_client.py", line 1593, in send\n response = await self._send_handling_auth(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_client.py", line 1621, in _send_handling_auth\n response = await self._send_handling_redirects(\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_client.py", line 1658, in _send_handling_redirects\n response = await self._send_single_request(request)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_client.py", line 1695, in _send_single_request\n response = await transport.handle_async_request(request)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_transports\default.py", line 353, in handle_async_request\n resp = await self._pool.handle_async_request(req)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\contextlib.py", line 137, in exit\n self.gen.throw(typ, value, traceback)\n File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\site-packages\httpx\_transports\default.py", line 77, in map_httpcore_exceptions\n raise mapped_exc(message) from exc\nhttpx.ConnectTimeout\n"
}

关于舆情

兄弟,你这舆情部分看得我血压拉满,做舆情不上NLP,真的是太暴殄天物了,哪怕是接入openNLP平台呢?脑壳疼

插件 `b站订阅助手` 存在bug,修复进行中

经过个别群友上机测试
发现如下问题:

  1. 会依次发送所拿到的动态信息,导致刷屏。原因可能是时间对比出错
  2. 禁用该插件无法阻止其继续发送属于本插件的消息。原因是业务逻辑部分未适配对应的功能开关检测

修复前,你可以选择:

  1. 暂时不启用此插件
  2. 将插件相关文件删除

希望涩图嗅探去除对gif类型的支持或提供开关

描述你的大致想法 | Describe your idea
涩图嗅探功能对gif类型的图片识别误差明显偏大, 即使将阈值调整为80%也依然有大量误触发

描述你想要的解决方案 | Describe the solution you'd like
希望涩图嗅探去除对gif类型的支持或提供开关

关于新功能征集

最近事太多没来得及构思新的功能,现征集所有想法!
无论您是否会编程,都可以提出!(可能不会回复但会考虑)
格式:

  • 功能名:
  • 目的:
  • 实现方法(可选):

一些问题

Wiki里go-cqhttp的配置
servers
http
port:改为20001
ws-reverse
disabled:改为true
应该改为false而不是true吧
以及为什么 pip install -r requirements.txt时最后会出错

Docker部署报错

描述错误 | Describe the bug
请尽可能地使用简洁语言描述,以方便开发者快速定位重点.
您好我在执行docke-compose up时发生报错。
如何复现 | To Reproduce
告诉我们该错误是如何触发的:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

错误预期行为 | Expected behavior
请尽可能地使用简洁语言描述,以方便开发者快速定位重点.

截图 | Screenshots
可以的话,请提供相关截图.
image

操作环境 | Desktop:

  • OS: [e.g. Linux]
  • Platform Info: [e.g. 2c2g 30g (2 core cpu 2g memories 30g storage)]
  • ATRI Version: [e.g. YHN-001-A05.fix1]
  • Runtime Area: [e.g. HongKong]

补充内容 | Additional context
你可以在此添加其它说明,或向我们提供你的解决方案.

来点涩图功能,当图片无法发出时可以尝试使用链接形式发出

我注意到,使用全部全新代码的atri,将主启动的config中的Setu reverse_proxy设置为False 时,来点涩图功能依然生效,且会使用代理链接的形式发出,而且暂未发现无法发出的情况。
Setu:
reverse_proxy: False

描述你想要的解决方案 | Describe the solution you'd like
因此 ,我认为,当检测到图片无法发出(被腾讯屏蔽时),图片可尝试使用链接形式推送。

变量传递无需定义函数

e = "" def BAIDU_SECRET(): return e
如上 为什么传递变量需要定义函数

下面是无需定义函数即可在.py文件间传递的实例
JUHE_JOKE_API_KEY = '' # 笑话大全 JUHE_IDIOM_API_KEY = '' # 成语词典

关于部署时的报错

image
部署的时候出现了这个问题,没有动过代码,大佬们这个应该怎么解决QAQ

希望能导入nonebot插件

描述你的大致想法 | Describe your idea
希望能导入nonebot上的插件
描述你想要的解决方案 | Describe the solution you'd like

操作环境 | Desktop:

  • OS:windows 2012
  • Platform Info:2c2g 60g
  • Runtime Area:HongKong

补充内容 | Additional context
你可以在此添加其它说明,或向我们提供你的解决方案.

B站订阅功能不显示UP主名字

描述错误 | Describe the bug
B站订阅功能不显示UP主名字

如何复现 | To Reproduce
/bd.add(UID)
然后名字就Unknown了
花园猫这个号之前也订阅不出名字,但昨天删了重新订阅出来了
但另外两个就依然是Unknown

错误预期行为 | Expected behavior
理论上应该有名字?

截图 | Screenshots
QQ截图20230615104020
QQ截图20230615104040

操作环境 | Desktop:

  • OS: Windows 11专业工作站
  • Platform Info: i3-8100T、8G DDR4
  • ATRI Version: Git Clone最新的
  • Runtime Area: China

补充内容 | Additional context

关于if开关失灵问题

在近日测试中发现:
一个或几个py文件中写有的if空置某command开启或关闭的功能,使其中一个启用或关闭后,其他的if会失效,不受控制,目前有待解决,如果有更好的方法欢迎继续提交issues,感谢!

图片上传等存在SQL注入漏洞

cur.execute('INSERT INTO cloudmusic VALUES ("%s")'%(msg))

如果用户上传的字段是经过精心构造的例如
'test);drop table cloudmusic;
你数据库就没了

我个人建议采用ORM或者使用占位符,不能直接采用字符串替换
以这句为例,应该为
cur.execute('INSERT INTO cloudmusic VALUES (?)',msg)

商店里有此插件却没有搜索到

描述错误 | Describe the bug
在nonebot上的插件却没搜索到

如何复现 | To Reproduce
告诉我们该错误是如何触发的:

  1. 搜索插件标题未搜索到
  2. 搜索nonebot_plugin_xxxx未搜索到
  3. 搜索安装命令显示未搜索到

错误预期行为 | Expected behavior
成功安装

截图 | Screenshots
E984E921-481E-4D95-9E76-E3FA2259A190
80A1F682-6BE4-4B90-BB50-9EDAB72DDFEF

操作环境 | Desktop:

  • OS: [Windows server2019
  • 2h2g 30m
  • 贵州

补充内容 | Additional context
你可以在此添加其它说明,或向我们提供你的解决方案.

登陆问题

扫码登陆显示环境不安全。扫码登陆pcTIM却可以成功。

单功能提取

如果仅想使用bot中的单一功能,请问如何提取使用呢?(在原生的nonebot2环境中

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.