Aiotieba

Latest version: v4.4.5

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

Scan your dependencies

Page 11 of 19

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) 优化文档组织

2.7.4

贴吧接口层

变化特性

- 将 `client.Sessions` 的对应功能并入 `client.Client`
- 使用 `weakref` 优化 `client.WebsocketResponse` 的等待方法
- 大量细节优化

bug修复

- `types.ShareThread` 现在可以正确组装 `text` 属性

应用层

变化特性

- 现在指令 `img_set` `img_reset` 在 `index` 参数缺省时会默认将封锁级别应用到指令所在位置的父级的所有图片上,即允许批量设置

2.7.3

贴吧接口层

新增特性

- 新增属性 `is_ws_aviliable` 来判断 `websocket` 是否可用,避免长连接 `keep-alive` 超时的问题
- `Clinet` 新增函数 `get_user_threads` 来获取用户发表的处于公开状态的主题帖
- `types.FragLink` 新增属性 `url` 用于解析外链。原 `link` 属性更名为 `raw_url`
- `ThreadInfo.proto` 新增字段 `fname` , `types._BasicContainer` 新增属性 `fname` 用于记录贴吧名

bug修复

- 由于长连接 `keep-alive` 超时的问题被解决,现在基于 `websocket` 的私信功能已经完全稳定
- 此前 `Client.get_image` 会在 `cv2.imdecode` 中 `libpng` 的 `CRC` 校验失败时返回 `None` ,现在该函数会始终返回 `numpy.ndarray` 实例
- `types.Reply` 现在会正确执行空构造

Page 11 of 19

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.