45 lines
1.9 KiB
Markdown
45 lines
1.9 KiB
Markdown
---
|
||
title: Checkpoint 2026-08-13 02:54:43 UTC [6add11e4bc]
|
||
type: checkpoint
|
||
permalink: main/projects/991bd0b4-6f60-47c0-8e47-1bb256c04653/checkpoint-2026-08-13-02-54-43-utc-6add11e4bc
|
||
stable_id: 239b53ab-c40a-4c6f-978f-f5e97d45f49f
|
||
scope: project
|
||
project_id: 991bd0b4-6f60-47c0-8e47-1bb256c04653
|
||
memory_type: checkpoint
|
||
status: active
|
||
revision: 1
|
||
restored_from_commit: 6a6a895eafcca6052e81a14fca103a42635dd1c2
|
||
created_at: '2026-09-23T15:02:34.326305+00:00'
|
||
updated_at: '2026-09-23T15:02:34.326372+00:00'
|
||
tags:
|
||
- mro
|
||
- csv
|
||
- done
|
||
---
|
||
|
||
## 已完成
|
||
用 lxml iterparse 编写 mro_to_csv.py:只提取每个 XML 第一个 measurement,smr 去 MR. 前缀,合并输出 GBK CSV。
|
||
|
||
## 原因
|
||
用户要用样板 MRO 批量转 CSV,后续 XML 放入 source/,合并到 output/MRO_<时间戳>.csv。
|
||
|
||
## 关键实现
|
||
- 脚本:mro_to_csv.py;依赖 lxml 6.1.1(.venv)
|
||
- 目录:source/ 输入,output/ 输出
|
||
- CSV 列:FileName,eNB,id,MmeUeS1apId,MmeCode,MmeGroupId,TimeStamp + 31 个去前缀 smr 字段
|
||
- 解析到第二个 measurement 即停止,避免 PLR/RIP
|
||
|
||
## 验证
|
||
样板 FDD-LTE_MRO_ZTE_OMC1_854879_20260813000000.xml 已复制到 source/ 并跑通:8589 行,约 1s,GBK 可读。首行 v 与 XML 第 8 行一致(3590 78 28 12... 邻区 PCI 83);末行与第一 measurement 最后一条 v 一致(PCI 92,邻区 38400/24)。
|
||
|
||
## 问题与方案
|
||
Windows 控制台中文可能乱码,不影响 CSV。CSV 额外保留 object/eNB 上下文列,否则批量后无法对应 UE/小区。
|
||
|
||
## 下一步
|
||
用户把更多 XML 放入 source/ 后执行:`.venv\Scripts\python.exe mro_to_csv.py`
|
||
|
||
## 给下个会话
|
||
- 项目:e:\Data\Users\Administrator\Downloads\MROTemp,venv 已有 lxml
|
||
- 只处理第一个 measurement;不要改成导出全部 measurement,除非用户明确要求
|
||
- 样板 XML 在仓库根目录和 source/ 各一份
|
||
- 输出命名 MRO_YYYYMMDDHHMMSS.csv,编码 gbk |