EDC Dropmate的Python助手
项目描述
Dropmate-py
为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 |
- 大小写敏感性取决于主机操作系统
- 递归通配符需要手动指定(例如
**/*.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 |
- 大小写敏感性取决于主机操作系统
- 递归通配符需要手动指定(例如
**/dropmate_records_*
) - 合并日志将写入指定的日志目录;任何同名的现有文件将被覆盖
贡献
注意:由于部署环境限制,无法使用编译库(例如 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 查看哈希)
关闭
dropmate_py-1.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f767adcb58110b01d21eab348fdc2243cd4a76be1b5b184d78f15b55760de923 |
|
MD5 | 00791ccaca8eceab618f115e9ffcbcfe |
|
BLAKE2b-256 | 7e64857b5e05152fbc3f979af51eddca016a2c26a9404b125614d68d9bb7e3e5 |