Aiotieba

Latest version: v4.5.3

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

Scan your dependencies

Page 12 of 17

2.9.0

贴吧接口层

变化特性

- `client.Client` 中,针对 `BDUSS_key` `BDUSS` `STOKEN` 等用户身份相关的属性的重复初始化会被拒绝并抛出警告

应用接口层

新增特性

- `_reviewer.py` 新增审查脚手架设计,原有业务流程可被大幅精简

变化特性

- `database.Database` 新增参数 `fname` 用于表示目标操作贴吧,且成员函数不再包含 `fname` 参数

应用层

新增特性

- 使用 `pyproject.toml` 管理项目依赖和包构建流程

2.8.3

贴吧接口层

新增特性

- `client.Client` 新增接口 `del_threads` 用于批量删除主题帖, `del_posts` 用于批量删除回复, `agree` `disagree` `unagree` `undisagree` 分别用来点赞、点踩、取消点赞、取消点踩
- `typedefs.UserInfo` 新增字段 `sign` 用于存放用户的个性签名
- `typedefs._Container` 以及它的派生类现在都是 `Hashable` 对象

变化特性

- `client.Client` 的各个 `ClientSession` 以及 `TCPConnector` 成员现在会采用惰性生成
- `typedefs.FragLink` 的 `text` 属性现在会返回链接本身而不是链接标题

bug修复

- python/cpython92841 修复了 [`asyncio`](https://docs.python.org/zh-cn/3/library/asyncio.html) 的 `_ProactorBasePipeTransport.__del__` 中当SSL链接关闭时会出现的 `RuntimeError: Event loop is closed`

应用层

变化特性

- 优先使用 `Client.del_post` 删除主题帖,这使得视频帖可以被删除
- 优化水经验脚本

2.8.2

贴吧接口层

新增特性

- 在内存缓存中新增 `fid` 到 `fname` 的映射

变化特性

- 所有不应被用户直接调用的私有函数现在都会在失败时直接抛出错误而不是返回 `False`
- 优化 `typedefs` 中各个类型的魔术方法的速度

bug修复

- 修复了 `Client._id2user_info` 中用户吧龄为 `-` 时会无法被转换为浮点数的bug

应用接口层

变化特性

- `reviewer.Reviewer` 不再继承自 `client.Client` 。而仅仅会实例化一个 `Client` 作为成员变量,并提供一些 `Client` 中的热点函数的*shortcut*
- `Reviewer.database` 更名为 `Reviewer.db`
- 默认数据库名由 `tieba_cloud_review` 更改为 `aiotieba`

应用层

变化特性

- 优化指令管理器的代码结构
- 优化文档
- 移除 `vote_stat` 指令

2.8.1

贴吧接口层

新增特性

- `client.Client` 现在会检查 `BDUSS` 和 `STOKEN` 的长度是否合法
- `client.Client` 现在会使用异步上下文管理器正确执行 `aiohttp.ClientResponse` 的清理操作

变化特性

- 现在 `aiotieba` 仅会在工作目录下查找配置文件 `aiotieba.toml` 而不是在脚本同级目录下查找 `config/config.toml`
- `aiotieba` 中 `logger` 更名为 `log` , `types` 更名为 `typedefs` 。同时将 `JSON_DECODER` 拆分到 `helpers` 中
- 优化请求所需的 `protobuf` 的字段装填方式
- 删除不需要的 `protobuf` 字段定义
- 使用 `typing` 泛型支持优化类型定义
- 优化 `Client.get_image` 。现在对headers的分析会在读取body前进行
- `WebsocketResponse` 使用 `asyncio.Future` 替代 `asyncio.Event`
- `WebsocketResponse.req_id` 的生成方式得到简化
- 优化日志记录格式

bug修复

- 修复了 `Client._id2user_info` 中当用户粉丝数超过 `10,000` 时字符串 `x.x万` 无法被转换为浮点数所导致的bug
- 修复了转发来源帖的声音信息获取失败的bug

应用层

变化特性

- 使用 `pyproject.toml` 管理第三方库 `pytest` 与 `black` 的行为
- 指令管理器更名为 `cmd_handler.py` 并使用工作目录下的 `cmd_handler.toml` 作为配置文件,而不是在脚本同级目录下查找 `config/listen_config.toml`
- 改用 [`vtuber吧`](https://tieba.baidu.com/vtuber) 的云审查作为范例
- 使用 [`pytest-asyncio`](https://github.com/pytest-dev/pytest-asyncio) 重写测试

2.8.0

贴吧接口层

新增特性

- `types` 中原来的 `Forum` 被重命名为 `BasicForum` 并新增一系列容器定义,如 `RankUser` `RankUsers` `MemberUser` `MemberUsers` 等,以支持对 `client.Client` 中各个类方法的返回值优化工作
- `types` 中 `BasicUserInfo` 的 `nick_name` 属性被移动至 `UserInfo` 。现在 `BasicUserInfo` 仅包含不变量。 `UserInfo` 的类属性被大幅扩充
- `client.Client` 中,方法 `get_bawu_dict` 更名为 `get_bawu_info`
- `client.Client` 中,一系列方法的返回值得到优化,同时附带名称变更,如 `get_rank_list` 更名为 `get_rank_users` 并返回 `RankUsers` 而不是原来的 `Tuple[List[Tuple[str, int, int, bool]], bool]`
- 由于官方对贴吧吧务后台进行了优化,仅传递 `portrait` 参数的封禁请求以及仅传递 `user_id` 参数的解封请求都不再会导致被封用户的头像和主页链接丢失,因此方法 `Client.block` 和 `Client.unblock` 的参数 `user (BasicUserInfo)` 变更为 `_id (str | int)` 以允许更快捷的方法调用
- 由于官方对解封申诉相关的技术栈进行了优化,并在官方层面支持批量申诉处理。现在 `Client.get_unblock_appeals` 方法使用 `/mo/q/getBawuAppealList` 来获取 `json` 格式数据,而相对地,原有的 `Client.get_unblock_appeal_list` 方法使用 `/mo/q/bawuappeal` 来获取 `ajax-html` 格式数据。现在 `Client.handle_unblock_appeals` 使用 `/mo/q/multiAppealhandle` 来实现批量申诉处理
- 新增 `Client.get_portrait` 来获取用户头像,支持小、中、原图三种尺寸
- `reviewer.Reviewer` 使用类属性 `img_hasher` 来保留图像哈希缓存区,避免重复申请内存。该优化需要 `opencv-contrib-python>=4.6.0.66` 支持
- 进一步推广使用限定位置形参和限定关键字形参来规范函数调用时的语义表达

变化特性

- 从**代码即文档**的思想出发,广泛使用 `property` 来为类属性添加注释,同时设置一批只读属性
- 由于批量申诉处理得到了官方层面的支持,因此 `reviewer.Reviewer` 中的方法 `refuse_unblock_appeals` 被弃用

应用层

新增特性

- 新指令 `recover` 用于恢复删帖
- 由于 `client.Client` 中的方法变动,调整了教程文档的内容

2.7.5

贴吧接口层

新增特性

- `client.Client` 新增 `get_forum_square` 用于获取吧广场的贴吧列表, `get_self_public_threads` 用于获取本人发布的公开状态的主题帖列表, `dislike_forum` 用于屏蔽贴吧使其不再出现在首页推荐列表, `undislike_forum` 用于取消对贴吧的屏蔽, `get_self_dislike_forum_list` 用于获取屏蔽吧列表。同时新增多个 `proto` 文件以支持上述功能
- `Client.get_self_info` 现在会优先使用缓存
- 使用 `yarl.URL` 优化url可读性和解析速度

变化特性

- 由于使用了 `weakref.WeakValueDictionary` 的 `[]` 语法以及 `str.removeperfix` 方法,最低支持的 `Python` 版本提高至 `3.9`
- `Reviewer.compute_imghash` 现在使用 `averageHash` 替代 `pHash` 以提高针对图像压缩算法的鲁棒性
- 配置文件格式由 `yaml` 更换为 `toml` 以提高纯文本编辑器下的编辑体验

应用接口层

变化特性

- `Database` 的 `tid` 记录表的功能更抽象化,不再是仅能记录临时屏蔽状态的表

应用层

新增特性

- 优化了[入门教程](wikis/tutorial.md)
- 使用 [`wikis`](wikis) 优化文档组织

Page 12 of 17

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.