# -*- coding: utf-8 -*- # 临时校验脚本:检查参考表样式索引覆盖 + 校验导出的xlsx import zipfile, re, os, sys, json rp = os.path.join(os.path.expanduser("~"), "Desktop", "6.18号欧阳路预估报价.xlsx") z = zipfile.ZipFile(rp) s = z.read("xl/styles.xml").decode("utf-8") m = re.search(r'', s) print("ref cellXfs count:", m.group(1) if m else "N/A") print("ref has theme1:", "xl/theme/theme1.xml" in z.namelist()) print("ref names:", z.namelist()) # 若提供了导出文件路径,则校验其结构 if len(sys.argv) > 1: p = sys.argv[1] zz = zipfile.ZipFile(p) bad = zz.testzip() print("zip testzip:", "OK" if bad is None else ("BAD:" + str(bad))) print("entries:", zz.namelist()) import xml.dom.minidom as md for name in zz.namelist(): data = zz.read(name) try: md.parseString(data) print("xml ok:", name, len(data), "bytes") except Exception as e: print("XML FAIL:", name, e) sheet = zz.read("xl/worksheets/sheet1.xml").decode("utf-8") rows = len(re.findall(r'', st) print("exported cellXfs count:", mm.group(1) if mm else "N/A")