--- 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