跳转到主要内容

EDC Dropmate的Python助手

项目描述

Dropmate-py

PyPI - Python Version PyPI PyPI - License pre-commit.ci status Code style: black

EDC Dropmate提供的Python助手。

安装

通过克隆此仓库并在虚拟环境中安装来安装

$ pip install .

您可以通过使用dropmate CLI来确认正确的安装

$ dropmate --help
Usage: dropmate [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  audit        Audit a consolidated Dropmate log.
  audit-bulk   Audit a directory of consolidated Dropmate logs.
  consolidate  Merge a directory of logs into a simplified drop record.

用法

注意:所有功能都假设日志记录由Dropmate应用版本1.5.16或更高版本提供。较旧版本可能不包含进行数据审计所需的所有数据列,iOS和Android应用之间也可能存在列名差异。

支持的审计

以下审计得到支持

  • 空投放记录
  • 最低海拔损失
  • 最低投放记录之间的时间
    • 上一个投放记录结束与下一个投放记录开始之间的时间差。
    • 短时间差可能表明上一个投放记录提前结束并在空中重新启动
  • 最低Dropmate固件版本
  • Dropmate内部时钟漂移
    • 测量为扫描设备在扫描时的时钟与Dropmate内部时钟之间的差值

环境变量

以下环境变量提供帮助,以便自定义管道行为。

变量名称 描述 默认
PROMPT_START_DIR UI文件/目录提示的起始路径 '.'

dropmate audit

处理合并的Dropmate日志CSV。

输入参数

参数 描述 类型 默认
--log-filepath 解析Dropmate日志CSV的路径。 路径|None GUI提示
--min-alt-loss-ft 阈值高度变化,单位:英尺。 int 200
--min-firmware 阈值固件版本。 int|float 5
--internal-time-delta-minutes Dropmate内部时钟与实际时间的差值。 int 60
--time-between-delta-minutes 从一次掉落记录的开始到上一个掉落记录的结束之间的差值 int 10

dropmate audit-bulk

批量处理一个包含合并Dropmate日志CSV的目录。

输入参数

参数 描述 类型 默认
--log-dir 解析Dropmate日志目录的路径。 路径|None GUI提示
--log-pattern Dropmate日志文件通配符模式。1,2 str "*.csv"
--min-alt-loss-ft 阈值高度变化,单位:英尺。 int 200
--min-firmware 阈值固件版本。 int|float 5
--internal-time-delta-minutes Dropmate内部时钟与实际时间的差值。 int 60
--time-between-delta-minutes 从一次掉落记录的开始到上一个掉落记录的结束之间的差值 int 10
  1. 大小写敏感性取决于主机操作系统
  2. 递归通配符需要手动指定(例如 **/*.csv

dropmate consolidate

将Dropmate应用程序输出的目录合并为一个去重、简化的掉落记录。

输入参数

参数 描述 类型 默认
--log-dir 解析Dropmate日志目录的路径。 路径|None GUI提示
--log-pattern Dropmate日志文件通配符模式。1,2 str "dropmate_records_%"
--out-filename 合并后的日志文件名。3 str consolidated_dropmate_records.csv
  1. 大小写敏感性取决于主机操作系统
  2. 递归通配符需要手动指定(例如 **/dropmate_records_*
  3. 合并日志将写入指定的日志目录;任何同名的现有文件将被覆盖

贡献

注意:由于部署环境限制,无法使用编译库(例如 Polars、Pandas/Numpy),工具被有意限制为纯Python实现。

开发环境

此项目使用Poetry来管理依赖项。将您的分支克隆到本地机器后,您可以使用以下命令安装项目和其依赖项以创建开发环境

$ poetry install

还提供了一个pre-commit配置,以创建一个pre-commit钩子,这样就不会提交lint错误

$ pre-commit install

测试与覆盖率

提供了一个pytest测试套件,其中包含来自pytest-cov的覆盖率报告。提供了一个tox配置,用于测试所有支持的Python版本。对于无法找到的Python版本,将跳过测试。

$ tox

报告中提供了缺失覆盖率的详细信息,包括测试套件中的详细信息,以便用户可以生成额外的测试以实现全面覆盖。

项目详情


下载文件

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

源分发

dropmate_py-1.0.0.tar.gz (12.0 kB 查看哈希)

上传时间

构建分发

dropmate_py-1.0.0-py3-none-any.whl (12.0 kB 查看哈希)

上传时间 Python 3

由以下支持