Skip to content

Releases: FHU-yezi/JKit

v2.9.0

22 Jan 16:02
Compare
Choose a tag to compare

功能变动:

  • 现在,所有生成器函数都会返回 Dict,编写批量获取代码时不再需要嵌套循环。这是一个不兼容的修改,请在升级 JRT 版本时确保相关代码一并更改,否则将导致异常。
  • 大部分函数增加了 disable_check 参数,允许用户禁用参数有效性检查以提升性能。

性能优化:

  • 对批量获取数据的函数进行了优化,只进行一次参数有效性检查,这将大幅度提高相关函数的性能。
  • jrt.objects 中的参数获取进行了优化,大幅度提升性能。

测试用例:

  • 更新测试用例,修复了几个会导致测试失败的数据问题。

v2.8.0

12 Jan 15:16
Compare
Choose a tag to compare

功能变动:

  • 新增函数 GetUserTimelineInfo ,用于获取用户动态列表信息
  • 新增函数 GetUserAllTimelineInfo,用于获取用户全部动态列表信息

v2.7.0

31 Dec 12:56
Compare
Choose a tag to compare

依赖变动:

  • Html 解析库 lxml 的目标版本由 4.6.3 变为 4.7.1该更新修复了一个由于 lxml 内部实现产生的危险代码执行问题,如果您没有计划将 JRT 升级到 v2.7.0 版本,强烈建议您手动运行 pip install lxml --upgrade 进行升级
  • 网络请求库 httpx 的目标版本由 0.19.0 变为 0.21.1
  • 现在,您在通过 pip 安装 JRT 时,可以通过指定附加包一并安装可选模块
    • pip install JianshuResearchTools[md-convert] 将一并安装 Markdown 转换库 tomd
    • pip install JianshuResearchTools[high-perf] 将一并安装高性能 Json 解析库 ujson
    • pip install JianshuResearchTools[full] 将安装全部可选模块

功能变动:

  • AssertStringAssertIntAssertFloat三个函数已经从存储库中移除,请使用 AssertType 函数判断变量类型
  • 重写了 object 模块中所有类的 __str__ 方法
  • 请求文集数据前,将校验文集状态

错误修复:

  • 修复 collection 模块中获取推荐作者信息函数重复返回第一页数据的问题

性能优化:

  • 移除了一些无用的导入

代码规范:

  • 规范代码格式,全面遵守 PEP8 规范

文档变更:

  • 重写所有文档

开发环境:

  • 引入 pipenv 作为虚拟环境,您可以使用 pipenv install 命令在虚拟环境中安装运行 JRT 所需的所有依赖库(包括可选依赖),或使用 pipenv install --dev 安装进行 JRT 开发与测试需要的所有依赖库
  • 支持直接通过运行 test_all.py 文件进行单元测试

v2.6.0

03 Dec 15:11
Compare
Choose a tag to compare

依赖变动:

  • 网络请求库由 requests 更换为 httpx
  • 可选 Json 解析库由 simplejson 更换为 ujson

功能变动:

  • basic_apis 模块中增加获取用户动态的接口
  • 增加对专题和小岛链接有效性的校验函数
  • 增加 AssertType 函数,用于实现类型检查
  • AssertStringAssertIntAssertFloat 三个函数已进入弃用阶段,将在下个版本中移除,请尽快修改您的代码

性能优化:

  • 优化了断言函数的逻辑,小幅提升性能
  • 字符串格式化方式改为 f-string,小幅提升性能
  • 提升了获取文章内容(纯文本和 Markdown)的性能

错误修复:

  • 修复获取用户性别时,性别值为 3 会报错的问题
  • 修复一个导致在 Python 3.6 版本中运行报错的问题

代码规范:

  • 规范泛型的类型注释
  • 规范生成器函数的类型注解与注释
  • 规范 List 和 Dict 的类型注解
  • 规范字符串判空写法

测试:

  • 重写测试,逻辑与用例分离

v2.5.0

01 Oct 14:38
Compare
Choose a tag to compare

功能变动:

  • 支持获取小岛帖子完整内容
    • 增加函数 GetIslandPostFullConetnt() 实现此功能
    • GetIslandPosts() 函数中新增参数 get_full_conetnt,为 True 时将检测获取到的帖子内容,如内容不全自动调用 GetIslandPostFullConetnt() 将其补全
    • GetIslandAllPostsData() 函数中也可通过参数指定获取完整帖子内容

错误修复:

  • 修复了 GetArticleFPRankData() 函数 date 参数使用默认值报错和返回值错误的问题

v2.4.0

25 Aug 13:35
Compare
Choose a tag to compare

功能变动:

  • 支持使用 yield 生成器函数获取以下信息:
    • 用户的关注者、粉丝、文章
    • 文章的评论
    • 专题的编辑、关注者、推荐作者、文章
    • 小岛的帖子
    • 文集的文章
      示例:
    from JianshuResearchTools.user import GetUserAllArticlesInfo
    for data in GetUserAllArticlesInfo("https://www.jianshu.com/u/ea36c8d8aa30/"):
        print(data)
  • 增加函数jrt.convert.CollectionUrlToCollectionId(),用于将专题 Url 转换为专题 ID

错误修复:

  • 修复因 APi 变动导致jrt.object模块中部分功能无法正常使用的问题
  • 修复获取文章全部基础信息函数中的一个返回值问题

依赖:

  • 依赖库 tomd 变为可选项

文档:

  • 规范注释大小写
  • 更新依赖库信息

格式:

  • 规范类型提示中的空格规则

v2.3.0

24 Aug 07:11
Compare
Choose a tag to compare

功能变动:

  • 增加函数jrt.article.GetArticleMarkdown(),用于获取 Markdown 格式的文章内容
  • 增加函数jrt.user.GetUserNextAnniversaryDay(),用于获取用户的下一次简书周年纪念时间
  • 增加以下函数:
    • jrt.article.GetArticleAllBasicData()
    • jrt.collection.GetCollectionAllBasicData()
    • jrt.island.GetIslandAllBasicData()
    • jrt.noteboook.GetNotebookAllBasicData()
    • jrt.user.GetUserAllBasicData()

用于获取指定简书实体的全部基础数据,由于缩减了网络请求的次数,相比逐个请求在性能上有很大提升。

  • 为规范命名,jrt.collection.GetCollectionInfoUpdateTime()更名为jrt.collection.GetCollectionInformationUpdateTime(),参数与返回值不变
  • 删除冗余的jrt.notebook.GetNotebookAuthorName()函数,可使用jrt.notebook.GetNotebookAuthorInfo()完整替代

错误修复:

  • 修复了一处导致无法使用面向对象方式获取小岛头像链接的错误

测试:

  • 更新了一个过时的测试用例

依赖变更:

  • 新增依赖库tomd>=0.1.3,用于实现 Markdown 格式文章内容的转换,目前为必需依赖,将在后续版本中更改为可选项

v2.2.2

14 Jul 13:44
Compare
Choose a tag to compare

(2.2.1 版本的获取文章评论有严重问题,请避免使用)

错误修复:

  • 修复了获取文章评论信息报错的问题
  • 修复了文章 Url、文章 Slug 和文章 Id 互转的相关函数命名与实际操作不符的问题

v2.2.0

14 Jul 00:15
Compare
Choose a tag to compare

新功能:

  • 支持获取文章评论信息

优化:

  • 获取文章 Html 时支持保留图片描述

错误修复:

  • 修复了获取用户简介(纯文本)时,如用户没有设置简介会报错的问题

v2.1.1

12 Jul 02:48
Compare
Choose a tag to compare

优化:

  • 现在,请求用户相关信息前会检测用户状态是否正常

错误修复:

  • 修复了获取用户关注与粉丝列表时,该页数据为空时会报错的 Bug