duct tape是一个python接口,用于下载数据、上载数据和控制受支持的ed-tech软件。

duct-tape的Python项目详细描述


Logo of the project

胶带

duct tape是一个python接口,用于下载数据、上载数据和控制受支持的ed-tech软件。 它建立在请求和selenium之上,旨在帮助k-12学校系统数据和it团队保存 时间和使用“更好”的代码来自动化他们的工作流程。

当前支持的产品

目前支持以下产品,有些比其他产品具有更多功能。

  • 学校薄荷糖
  • 谷歌表格
  • < Lexia ><李>
  • 聪明
  • 通知K12
  • 用餐时间
  • 打字代理

安装/入门

若要使用此项目,请完成以下步骤(注意:我们当前缺少master和 尚未剪切发行版):

  1. 在计算机上设置chrome+selenium环境。说明here
  2. 将项目下载或克隆到计算机上。
  3. 导航到命令行/终端中的根目录ducttape(其中包含setup.py文件)。运行pip install ./
  4. 查看^{}文件夹中的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。如果你有 一个错误修复或代码清理建议,请随意离开我们并提交一个请求。

许可

请查看许可证文件。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java是否在servlet中检索上一页路径?   Java抱怨在开关的默认情况下未初始化最终字段   Java泛型:为什么编译器不能判断这个类<t>对象与这个类的类型参数的对象的类具有相同的类型?   Java:继承方法中使用的私有变量   HibernateJava。ClassCastException:java。lang.Integer不能强制转换为abc。def。我的项目。奥姆。EmployeeTopMetaData   http java发布和下载文件   java改进条件检查   java如何将2d数组的条目作为键放在地图中   java如何获取传递给运行时的值。getRuntime。JUnit测试用例中的exit(value)   java注释来创建所有可能的构造函数   自动建议列表:java。lang.IllegalArgumentException:在XPath表达式为null时找不到元素   为什么MapAPI在Java中不提供流功能?   gradle不导入本地java库   尽管我使用的是SessionCreationPolicy,java Spring安全性似乎仍在使用会话。无国籍   使用java查找MongoDB中数组元素的平均值