duct tape是一个python接口,用于下载数据、上载数据和控制受支持的ed-tech软件。
duct-tape的Python项目详细描述
胶带
duct tape是一个python接口,用于下载数据、上载数据和控制受支持的ed-tech软件。 它建立在请求和selenium之上,旨在帮助k-12学校系统数据和it团队保存 时间和使用“更好”的代码来自动化他们的工作流程。
当前支持的产品
目前支持以下产品,有些比其他产品具有更多功能。
- 学校薄荷糖
- 谷歌表格 < Lexia ><李>
- 聪明
- 通知K12
- 用餐时间
- 打字代理
安装/入门
若要使用此项目,请完成以下步骤(注意:我们当前缺少master和 尚未剪切发行版):
- 在计算机上设置chrome+selenium环境。说明here。
- 将项目下载或克隆到计算机上。
- 导航到命令行/终端中的根目录
ducttape
(其中包含setup.py文件)。运行pip install ./
。 - 查看^{
} 文件夹中的schoolmint示例,了解如何轻松地获取数据。
文档
许多函数都有描述其用途、参数和返回类型的强文档字符串。 目前,这与几个examples是文档的主要来源。
功能
- 从Ed Tech Web用户界面下载数据,无需人工交互
- 通过网络用户界面将数据上传至Ed Tech,无需人工交互(即将推出)
- 通过python控制ed-tech web ui(有限实现)
这个项目最初的开发目的是自动从ed tech中提取数据 python中的产品并将其作为pandas数据帧返回以供分析。因此,最大的 功能集是从不同的ed技术产品下载平面文件,这些产品不提供 API和SQL访问您可能需要访问的所有数据。一些工作正在进行中 上载数据并控制ed技术平台的其他部分,但它仍在 私人发展。
开发
这个项目的愿景是让来自不同学校系统的贡献者帮助构建 一个集中的、编码良好的、经过测试的库,用于与不提供 充足的面向客户的API。如果贡献者以开发人员的身份加入进来,这将是最成功的。 从不同的学校系统;铁会磨砺铁,我们会得到更好的教育技术产品的覆盖面。
如果你有兴趣开发(特别是如果你有兴趣添加对新的 产品),请联系pyoho@summitps.org。
未来发展思路
- 添加从新产品下载数据的功能
- 向当前支持的产品添加缺少的功能。
- 完全自动化的单元测试
单元测试
已经为这个包中的大部分功能编写了单元测试。这些是跑步 在向船长作出任何承诺之前。但是,它们是特定于上下文的(因为您需要 使用实时实例进行测试)并且不是完全自动化的(仍有一些情况 当一个人需要检查下载的数据是否符合预期条件时 正在测试生产系统)。
未来的一个发展领域是找出如何正确模拟与 这些ed技术平台使我们能够完全自动化单元测试并具有更好的覆盖率。
贡献
如果您想贡献新功能,请联系pyoho@summitps.org。如果你有 一个错误修复或代码清理建议,请随意离开我们并提交一个请求。
许可
请查看许可证文件。