跳转到主要内容

用于向Kolibri内容编目服务器添加内容的API

项目描述

电饭煲

PyPI pyversions build docs

《code>电饭煲库是一个框架,用于将教育内容自动化转换为Kolibri内容频道,并将其上传到Kolibri Studio,这是Kolibri的中心内容服务器。

📚 电饭煲文档

请访问📚 ricecooker.readthedocs.io以获取有关安装入门API参考代码示例的完整详细信息。

Kolibri内容概述

使用电饭煲将网络上可用的开源教育内容转换为适合离线使用的包,可以导入到Kolibri中。

将新内容添加到 Kolibri 的基本流程如下

  • 上传 您的内容到 Kolibri Studio,可以通过 Kolibri Studio 网页界面手动上传,或者使用基于 ricecooker 的内容集成脚本来编程上传。
  • 发布 在 Kolibri Studio 上发布频道,使其能够在 Kolibri 中使用。
  • 导入 使用发布步骤完成后在 Kolibri Studio 中显示的频道令牌将频道导入 Kolibri。

以下图示说明了内容在 Kolibri 生态系统中的流动方式,并突出了由 ricecooker 框架覆盖的部分(左下角)。

在 Kolibri 学习平台中使用外部内容源的步骤概述 外部内容源(左侧)首先上传到 Kolibri Studio(中间),以便在 Kolibri 学习平台(右侧)中使用。

进一步阅读

了解如何编写自动内容集成脚本,请访问 Ricecooker 文档 网站。

以下是一些链接,您可以阅读其他文档和指南,以了解 Kolibri 内容平台的其他部分:

======= 历史

0.6.46 (2020-09-21)

  • 添加 ricecooker.utils.youtube,包含处理和缓存 YouTube 视频和播放列表的实用工具。
  • 改善 ExerciseNode 中的 mn 掌握模型值的验证。

0.6.45 (2020-07-25)

  • 移除 SushiBar 远程监控和远程命令功能

0.6.44 (2020-07-16)

  • 文档全面审查和刷新,请参阅 ricecooker.readthedocs.io <https://ricecooker.readthedocs.io/>__
  • 添加支持指定频道标语
  • 确保为所有节点类型发送 extra_fields 数据
  • --reset 行为设置为默认
  • 移除 compatibiliry_mode 和 BaseChef 类周围的旧代码
  • 改进缓存逻辑(不缓存缩略图和本地路径,始终缓存 YouTube 下载)
  • 确保厨师在运行后清理(自动删除临时文件)
  • 添加 save_channel_tree_as_json,作为每次运行的一部分保存完整频道元数据。
  • 添加对网络内容存档的支持
  • 进一步改进日志记录
  • 修复:在 ffmpeg_settings 中的嵌套字典值中的深度确定性缓存键错误

0.6.42 (2020-04-10)

  • 添加 --sample N 命令行选项。使用 --sample 10 运行脚本以生成包含从完整频道中随机选择 10 个节点的测试版频道。这可以用来检查转换是否按预期工作。
  • 添加 dryrun 命令。使用命令 ./sushichef.py dryrun 以正常方式运行厨师,但跳过将文件上传到 Studio 的步骤。
  • 添加 HTTP 代理功能用于 YouTubeVideoFile 和 YouTubeSubtitleFile。设置 PROXY_LIST 环境变量为 {ip}:{port} 的以 ; 分隔的列表。Ricecooker 将检测 PROXY_LIST 的存在并使用它通过 YoutubeDL 访问资源。或者,设置 USEPROXY 环境变量以使用免费代理服务器列表,这些代理服务器非常慢且不可靠。
  • 改进了彩色日志记录功能和日志输出的可定制性。

0.6.40 (2020-02-07)

  • 将默认行为更改为上传预发布树而不是主树
  • 添加 --deploy 标志以重现旧行为(上传到主树)
  • 为音频、HTML5、PDF和ePub节点添加了缩略图生成方法。在创建Node实例时设置derive_thumbnail=True,或者传递命令行参数--thumbnails以生成所有节点的缩略图。注意:只有当thumbnail为None时,自动缩略图生成才会生效。

0.6.38 (2019-12-27)

  • 支持了h5p内容类型和h5p文件类型
  • 从辅助方法download_static_assets中移除了对localStoragedocument.cookie的猴子补丁
  • 为标签添加了验证逻辑
  • 改进了错误报告

0.6.36 (2019-09-25)

  • 添加了对使用JsonChef工作流程的标签的支持
  • 添加了验证步骤以确保字幕文件对每个语言代码都是唯一的
  • 记录了Kolibri 0.13中即将推出的新SlidesShow内容类型
  • 添加了详细说明内容上传和更新工作流程的文档
  • 修复了文件扩展名逻辑的错误,并改进了字幕周围的错误处理

0.6.32 (2019-08-01)

  • 更新文档以使用顶级标题
  • 移除了对Python 3.4的支持
  • 移除了对“sous chef”工作流程的支持

0.6.31 (2019-07-01)

  • 处理了更多可转换为字幕的格式:SRTTTMLSCCDFXPSAMI

0.6.30 (2019-05-01)

  • 更新文档构建脚本,以便在read the docs上提供ricecooker文档
  • 添加了corrections命令行脚本来批量编辑内容元数据
  • 添加了StudioApi客户端以支持CRUD(创建、读取、更新、删除)Studio操作
  • 添加了pdf-splitting辅助方法(请参阅ricecooker/utils/pdf.py

0.6.23 (2018-11-08)

  • 更新了le-utilspressurcooker依赖项到最新版本
  • 添加了对ePub文件的支持(可以将EPubFile添加到DocumentNode中)
  • 添加了标签支持
  • STUDIO_URL的默认值更改为api.studio.learningequality.org
  • 为内容节点添加了aggregatorprovider字段
  • 对练习中的图像处理进行了各种错误修复
  • 将验证逻辑更改为使用self.filename来检查文件格式是否在self.allowed_formats
  • 添加了is_youtube_subtitle_file_supported_language辅助函数以支持导入YouTube字幕
  • 添加了srt2vtt字幕转换
  • utils.downloader.download_static_assets中添加了静态资产下载器辅助方法
  • 将LineCook厨师函数添加到--generate CSV以从目录结构中
  • 修复了始终randomize=True的bug
  • 文档:一般内容节点元数据指南
  • 文档:视频压缩说明和辅助脚本convertvideo.batconvertvideo.sh

0.6.17 (2018-04-20)

0.6.15 (2018-03-06)

  • 添加了对非mp4视频文件的支持,使用ffmpeg进行自动转换。请参阅git diff b1d15fa 87f2528
  • 将CSV练习工作流程支持添加到LineCook厨师类
  • 添加了--nomonitor CLI参数以禁用sushibar功能
  • 定义了新的ENV变量
    • PHANTOMJS_PATH:将此设置为phantomjs二进制文件(而不是假设在node_modules中有一个)
    • STUDIO_URL(别名CONTENTWORKSHOP_URL):设置为上传文件的Kolibri Studio服务器URL
  • 对支持sushi厨师的各种修复
  • ricecooker/utils/html.py中移除了minimize_html_css_js实用函数,以消除对css_html_js_minify的依赖并完全支持Py3.4。

0.6.9 (2017-11-14)

  • 将默认日志级别更改为--verbose
  • 通过--cmdsock添加了对cronjobs脚本的支持(请参阅docs/daemonization.md)
  • 在utils/html_writer.py中添加了创建HTML5Zip文件的工具
  • 在utils/downloader.py中添加了下载HTML的实用程序,可选支持js
  • 添加了 utils/path_builder.py 和 utils/data_writer.py,用于创建 souschef 存档(包含文件夹层次结构的文件 + Channel.csv + Content.csv 的 zip 存档)

0.6.7 (2017-10-04)

  • 同级内容节点现在需要具有唯一的 source_id
  • 除了公共领域之外的所有许可证都需要 copyright_holder 字段

0.6.7 (2017-10-04)

  • 同级内容节点现在需要具有唯一的 source_id
  • 除了公共领域之外的所有许可证都需要 copyright_holder 字段

0.6.6 (2017-09-29)

  • 添加了 JsonTreeChef 类,用于从 ricecooker json 树创建频道
  • 添加了 LineCook 厨师类,以支持基于 souschef 的频道工作流

0.6.4 (2017-08-31)

  • ContentNode 添加了 language 属性(le-utils 中定义的内部表示的字符串键)
  • language 设为 ChannelNode 的必填属性
  • 默认启用 sushibar.learningequality.org 进度监控。将 SUSHIBAR_URL 环境变量设置为控制进度报告的位置(例如,https://:8001
  • 更新 le-utils 和 pressurecooker 依赖项到最新版本

0.6.2 (2017-07-07)

  • 明确指出 ricecooker 仅支持 Python3(目前如此)
  • 使用 https:// 和 wss:// 进行 SuhiBar 报告

0.6.0 (2017-06-28)

  • 远程进度报告和日志记录到 SushiBar(MVP 版本)
  • 基于 SuchiChef 类的新 API
  • 以兼容模式支持现有的旧-API 厨师

0.5.13 (2017-06-15)

  • 添加 SushiBar 功能之前的最后一个稳定版本
  • 将 --do-not-activate 参数重命名为 --stage

0.1.0 (2016-09-30)

  • PyPI 上的第一个版本。

项目详情


发布历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定选择哪一个,请了解有关安装包的更多信息。

源代码分发

ricecooker-0.7.3.tar.gz (7.7 MB 查看哈希值)

上传时间 源代码

构建分发

ricecooker-0.7.3-py2.py3-none-any.whl (139.9 kB 查看哈希值)

上传时间 Python 2 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面