美文网首页
JKit v3 开发者预览版发布!

JKit v3 开发者预览版发布!

作者: 初心不变_叶子 | 来源:发表于2023-12-30 08:52 被阅读0次

    经过两周的封闭测试,JKit(原 JRT)开发者预览版已上线。

    pip install jkit --pre
    

    在该版本中,我们重新思考设计了 SDK 的交互逻辑。

    import asyncio
    
    from jkit.user import User
    
    
    async def main() -> None:
        user = User.from_url("https://www.jianshu.com/u/ea36c8d8aa30")
    
        print(await user.name)
    
    
    asyncio.run(main())
    
    # Output: 初心不变_叶子
    

    并为一系列新的应用场景提供开箱即用的解决方案。

    获取用户发布的文章:

    import asyncio
    
    from jkit.user import User
    
    
    async def main() -> None:
        user = User.from_url("https://www.jianshu.com/u/ea36c8d8aa30")
    
        async for item in user.iter_articles():
            print(item.title)
    
    
    asyncio.run(main())
    
    # Output:
    # 更新日志 | 简书小工具集 v3.7.0 与大量体验更新
    # 不被定义的未来——初心不变_叶子简书四周年总结
    # 公告 | 服务状态面板更新
    # 公告 | 支持积分兑换平台贝价守护联盟
    # 公告 | 2023.8.21 简书小工具集贝市分析工具服务异常
    # ...
    

    获取用户资产排行榜数据:

    import asyncio
    
    from jkit.ranking.assets import AssetsRank
    
    
    async def main() -> None:
        rank = AssetsRank()
    
        async for item in rank.iter_data():
            print(item.ranking, item.assets_amount)
    
    
    asyncio.run(main())
    
    # Output:
    # 1 25510488.199
    # 2 7113481.439
    # 3 5692270.099
    # 4 5515595.892
    # 5 5036086.12
    # ...
    

    同时,我们简化了资源对象间的转化操作:

    import asyncio
    
    from jkit.article import Article
    
    
    async def main() -> None:
        article = Article.from_url("https://www.jianshu.com/p/1a3de4297818")
    
        author_info = await article.author_info
        author = author_info.to_user_obj()  # jkit.user.User Object
    
        print(await author.name)
    
    
    asyncio.run(main())
    
    # Output: 初心不变_叶子
    

    更多配置项现已公开:

    from jkit.config import DATA_OBJECT_CONFIG, NETWORK_CONFIG, RESOURCE_OBJECT_CONFIG
    
    # 设置网络代理
    NETWORK_CONFIG.proxies = "http://localhost:7890"
    
    # 禁用数据校验
    DATA_OBJECT_CONFIG.enable_validation = False
    
    # 关闭资源对象自动检查
    RESOURCE_OBJECT_CONFIG.auto_checking = False
    

    最后,我们现已支持获取部分私有数据(需要鉴权):

    import asyncio
    
    from jkit.credential import JianshuCredential
    from jkit.private.assets import AssetsTransactionHistory
    
    
    async def main() -> None:
        credential = JianshuCredential(token="<remember_user_token>")
    
        history = AssetsTransactionHistory(credential=credential, assets_type="FP")
        async for item in history.iter_records():
            print(item)
    
    
    asyncio.run(main())
    

    上述部分功能已在简书小工具集中投入使用。

    pip install jkit --pre
    

    声明

    JKit 尚处于 Alpha 测试阶段,可能随时进行不兼容变更。

    使用 JKit 时请控制并发速率,降低对简书 API 的压力。

    JKit 私有数据获取功能 jkit.private 需要简书鉴权信息,请仅在获得用户同意的前提下使用这些功能,并请注意不要将 Token 泄露给第三方,以免影响账户安全。

    相关文章

      网友评论

          本文标题:JKit v3 开发者预览版发布!

          本文链接:https://www.haomeiwen.com/subject/atnsndtx.html