YiriMirai
YiriMirai copied to clipboard
一个轻量级、低耦合的基于 mirai-api-http 的 Python SDK。
目前的 `pyproject.toml` 里的 `python = ">=3.7, =3.7,
Python3.7使用自定义模型事件总线时,执行emit报错; 当传入event为str类型时,会调用super()的emit函数,但此时产生问题为ModelEventBus本身并没有在初始化时调用super()的初始化,且没有提供event_chain_generator,导致ModelEventBus对象不存在event_chain_generator属性; ``` Traceback (most recent call last): File "sendmsgEventTest.py", line 143, in thread_listen await mbus.emit(event, msgs) File "/usr/local/lib/python3.7/dist-packages/mirai/models/bus.py", line 119, in emit return await super().emit(event, *args, **kwargs) File "/usr/local/lib/python3.7/dist-packages/mirai/bus.py",...
 获取的 member 为 None,切换为 HTTPAdapter 获取的还是 None,但若使用  却能获取到bot的群成员消息,并可修改。
``` >>> mirai.models.message.Face(1) Traceback (most recent call last): File "", line 1, in File "D:\Anaconda3\lib\site-packages\mirai\models\message.py", line 761, in __init__ self.face_id = args[0] File "pydantic\main.py", line 391, in pydantic.main.BaseModel.__setattr__ AttributeError: __fields_set__...
@bot.on(GroupMessage) def on_group_message(event: GroupMessage): if str(event.message_chain) == '来点涩图': setu_response = requests.get(api_setu) setu_data = setu_response.json() img_url = setu_data['data'][0]['urls']['original'] print(img_url) return bot.send(event, MessageChain([Image(url=img_url), Plain('pid:'+str(setu_data['data'][0]['pid'])+'\n'+'作者:'+str(setu_data['data'][0]['author'])+'\n'+'标题:'+str(setu_data['data'][0]['title']))]))
删除了MessageChain索引、切片以及get操作中获取前若干个消息组件的功能(可用二次操作代替); 增加了MessageChain索引、切片以及get操作中传入消息组件类型组的功能; 修改了MessageChain索引、切片以及get操作返回的类型:将原有的List[MessageComponent]修改为Message(List[MessageComponent]); 更改了对应type hints及文档描述。