GithubHelp home page GithubHelp logo

kyomotoi / atri Goto Github PK

View Code? Open in Web Editor NEW
720.0 13.0 87.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


姫野 星奏


私、愛してる

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

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

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

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

登陆问题

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

关于if开关失灵问题

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

未知错误->连接超时

{
"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平台呢?脑壳疼

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)

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

描述问题 | Describe the question

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

补充内容 | Additional context

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

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

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


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

/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

关于新功能征集

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

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

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 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***"

关于部署时的报错

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

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

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

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

修复前,你可以选择:

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

一些问题

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

无法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

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
你可以在此添加其它说明,或向我们提供你的解决方案.

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

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

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

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

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

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

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

描述错误 | 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
你可以在此添加其它说明,或向我们提供你的解决方案.

变量传递无需定义函数

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

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

部署卡住

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

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

使用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,保持项目环境的一致性

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

无法安装插件,插件报错

描述错误 | 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

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

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

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

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

是否无法与其他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

单功能提取

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

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

希望能导入nonebot插件

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

操作环境 | Desktop:

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

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

该目标不存在实例

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

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

没有打开“使用内置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
你可以在此添加其它说明.

控制台报错

描述错误 | 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
你可以在此添加其它说明,或向我们提供你的解决方案.

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.