Aiotieba

Latest version: v4.5.3

Safety actively analyzes 722032 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 14 of 17

2.6.0

贴吧接口层

新增特性

- 贴吧 `websocket` 封装完成,现在支持发送贴吧私信
- 新增 `UpdateClientInfoReqIdl.proto` `UpdateClientInfoResIdl.proto` `CommitPersonalMsgReqIdl.proto` `CommitPersonalMsgResIdl.proto` 用于支持 `websocket` 中的 `protobuf` 交互
- 新增库依赖 `pycrytodome` 用于支持 `websocket` 中的加密方法
- 新增 `Sessions._wrap_ws_bytes` 和 `Sessions._unwrap_ws_bytes` 用于对 `websocket` 信息做封装与解封装

变化特性

- `Browser.ip` 被移除
- `Browser.get_self_forum_list` 现在使用接口 `https://tieba.baidu.com/mg/o/getForumHome` 替换接口 `http://c.tieba.baidu.com/c/f/forum/like` ,每页可获取的关注贴吧数由50上升至200
- `Browser._app_sign` 被移动到 `Sessions._wrap_form` , `Browser._get_tieba_multipart_writer` 被移动到 `Sessions._wrap_proto_bytes`
- 现在所有表单都以元组列表形式传参

bug修复

- 修复几处返回类型不明确的bug

2.5.2

贴吧接口层

新增特性

- 类方法 `Browser.refuse_appeals` 被拆分为 `Browser.get_unblock_appeal_list` 和 `Browser.handle_unblock_appeal` ,原实现被移动至 `Reviewer.refuse_unblock_appeals`
- 新增 `Browser.get_forum_detail` 用于从 `fid` 反查贴吧详细信息
- 新增 `Reviewer.get_tieba_name` 用于从 `fid` 反查贴吧名
- `_types.FragImage` 新增属性 `show_width` `show_width` 用于表示图像显示的宽和高

变化特性

- `Browser.get_self_forums` 现在可以控制页码翻页,直接返回列表而不是异步迭代,同时更名为 `Browser.get_self_forum_list`
- `Browser.get_forums` 现在直接返回列表而不是异步迭代,同时更名为 `Browser.get_forum_list`
- `Database.get_user_id_list` 的参数顺序调整, `permission` 现在是第一个参数

bug修复

- `Browser.get_homepage` 现在能正确获取主题帖的 `fid` 和 `tid`

应用层

新增特性

- 现在所有修改用户权限级别的指令都会将原有的 `note` 打印到日志

2.5.1

贴吧接口层

新增特性

- `_types.FragImage` 新增属性 `hash` 用于裁取图像链接的百度图床hash
- `ThreadInfo.proto` 新增字段 `post_id` , `_types.Thread` 现在会尝试从 `thread_proto.post_id` 字段初始化 `pid`

应用接口层

变化特性

- 新增类 `reviewer.Punish` 用于记录删封操作
- 表 `img_blacklist` 更名为 `imghash`
- `reviewer.RegularExp` 更名为 `reviewer.CheckExps`
- `reviewer.Reviewer` 不再初始化一个 `CheckExps` 实例作为类成员

应用层

新增特性

- 新指令 `img_set` `img_reset` 用于操作图片的封锁级别。参考 [`wiki`](https://github.com/Starry-OvO/Tieba-Manager/wiki/%E6%8C%87%E4%BB%A4%E7%AE%A1%E7%90%86%E5%99%A8%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E%E4%B9%A6#img_set-%E8%AE%BE%E7%BD%AE%E5%9B%BE%E7%89%87%E5%B0%81%E9%94%81%E7%BA%A7%E5%88%AB)

2.5.0

贴吧接口层

新增特性

- 新接口 `Browser.ip` 用于获取出口ip

变化特性

- `_types.FragLink` 的 `text` 属性将不再附带链接内容

应用接口层

变化特性

- `database.Database` 使用 `aiomysql` 替换 `pymysql` ,使用连接池替换单个连接

应用层

新增特性

- 指令 `vote_stat` 新增参数 `min_level` 通过等级限制纳入统计的用户

bug修复

- 修复了指令管理器中一个导致指令被反复解析执行的bug
- 通过将 `while-do` 调整为 `do-while` , `water_restrict exit` 现在能正确地恢复所有帖

2.4.1

贴吧接口层

新增特性

- `_types.FragLink` 新增属性 `is_external` 用于判断链接是否属于外链

变化特性

- `Browser._id2user_info` 使用 `match-case` 替代 `str.startswith` 以优化性能
- `Browser.url2image` 不再使用 `Pillow` 解码图像
- `Fragments.texts` 现在使用懒加载,因为大部分的碎片类型都是 `FragText` 的子类型
- `_types.Ats` 会检查 `_raw_data['at_list']` 是否为空,`_types.Searches` 会检查 `_raw_data['post_list']` 是否为空,以避免返回结果为空时出现的解析bug
- 使用 [`black`](https://github.com/psf/black) 重格式化所有代码
- 多处细微的代码规范、注释和性能改进

应用层

变化特性

- `admin_listen.Context` 的参数解析不再受到多余空格的干扰
- `admin_listen.Context` 长文本补全操作的触发阈值现在由 `bytes-length` 而不是 `string-length` 决定,以更好地匹配贴吧后端所使用的裁剪方法
- `admin_listen.Context` 中针对楼层回复的长文本补全效果更稳定了
- `admin_listen.Listener` 现在使用 `getattr` 而不是 `self._cmd_map` 来获取用于执行指令的函数,这可以节约内存、精简代码并提高初始化效率
- 云审查现在使用 `CloudReview.Punish` 来生成处罚并自动获取生成处罚时的行数

2.4.0

贴吧接口层

新增特性

- `Browser.get_posts` 新增参数 `is_fold` 以支持获取被折叠的楼层
- `_types.Posts` 新增字段 `has_fold` 来判断当前主题帖是否存在被折叠的楼层

变化特性

- `_api.Browser` 及其子类的初始化过程被移动到异步函数 `_init` 中,以为适应 `Python 3.11` 的新规范做准备
- 贴吧客户端版本号由 `12.23.1.0` 回退至 `12.12.1.0` 以避免楼层折叠
- 对 `Python` 版本的最低需求提高至 `3.10` 以使用最新特性 [`PEP 604 - Allow writing union types as X | Y`](https://peps.python.org/pep-0604/) 和 [`PEP 634 - Structural Pattern Matching: Specification`](https://peps.python.org/pep-0634/)
- 使用 [`protobuf v3.20.0`](https://github.com/protocolbuffers/protobuf/releases/tag/v3.20.0) 优化 `protobuf` 的序列化/反序列化代码

应用接口层

新增特性

- `reviewer.Reviewer` 新增多个偏函数以提升数据库操作的编程效率

变化特性

- `database.Database` 和 `_logger._Logger` 现在采用更优雅的单例模式。并使用 `atexit` 执行析构

应用层

新增特性

- 新增指令 `block1` 用于将指定用户封禁一天
- 指令 `block` `block3` `block1` `unblock` `black` `white` `reset` `set` `get` `tb_black` `tb_reset` 现在支持使用包含 `user_id` 的字符串指定操作目标。详细使用方法请参考 [`wiki`](https://github.com/Starry-OvO/Tieba-Manager/wiki/%E6%8C%87%E4%BB%A4%E7%AE%A1%E7%90%86%E5%99%A8%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E%E4%B9%A6#block--block3-%E5%B0%81%E7%A6%81)
- 得益于新设计 `Context._init_full()` ,现在字符数量超过30的长指令会被完整解析

变化特性

- 指令类型 `cmd_type` 和指令参数列表 `args` 的解析方法被移动至 `Context` 并使用懒加载模式解析
- 指令 `holyshit` 的发送内容优化
- 指令 `ping` 现在会一并检查数据库的连接状态
- 指令管理器不再会修改 `listen_config.json`

bug修复

- 修复了一个数据库连接超时断开的bug,现在在执行任何指令前都会 `ping` 一次数据库并尝试重连

Page 14 of 17

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.