#!/usr/bin/env python3
"""调试：检查一个典型文件的解析过程"""
import openpyxl
import os

DATA_DIR = '/data/www/files/scQxYjs'
KEYWORDS = ['网络培训','培训','能力提升','视频拍摄','党员教育片','课程制作',
            '直播','视频','课件','系统','信息化','网络','数字','设备','平台','维护','软件']

# 找一个组织部xlsx文件
found = 0
for root, dirs, files in os.walk(DATA_DIR):
    for f in files:
        if f.startswith('_') or f.endswith('.json') or f.endswith('.py') or f.endswith('.html'):
            continue
        if f.endswith('.xlsx') and '组织部' in f:
            fp = os.path.join(root, f)
            print(f'\n=== 文件: {os.path.relpath(fp, DATA_DIR)} ===')
            try:
                wb = openpyxl.load_workbook(fp, data_only=True)
                print(f'Sheets: {wb.sheetnames}')
                
                # 遍历每个sheet
                for sheet_name in wb.sheetnames:
                    ws = wb[sheet_name]
                    if ws.max_row < 2:
                        continue
                    
                    # 看前5行
                    print(f'\n  Sheet: {sheet_name} (rows={ws.max_row}, cols={ws.max_column})')
                    for r in range(1, min(6, ws.max_row+1)):
                        vals = []
                        for c in range(1, min(ws.max_column+1, 12)):
                            v = ws.cell(row=r, column=c).value
                            vals.append(str(v)[:25] if v else '')
                        print(f'    R{r}: {vals}')
                    
                    # 找含关键字的行
                    found_kw = False
                    for r in range(1, ws.max_row+1):
                        for c in range(1, min(ws.max_column+1, 12)):
                            v = ws.cell(row=r, column=c).value
                            if v:
                                vstr = str(v)
                                for kw in KEYWORDS:
                                    if kw in vstr:
                                        print(f'    ★ 匹配: R{r}C{c} = {vstr[:60]}')
                                        # 看同行其他列
                                        row_vals = []
                                        for c2 in range(1, min(ws.max_column+1, 12)):
                                            v2 = ws.cell(row=r, column=c2).value
                                            row_vals.append(f'C{c2}={v2}')
                                        print(f'      整行: {row_vals}')
                                        found_kw = True
                                        break
                                if found_kw:
                                    break
                        if found_kw:
                            break
                    if not found_kw:
                        print(f'    (无关键字匹配)')
                        
            except Exception as e:
                print(f'  错误: {e}')
            
            found += 1
            if found >= 3:
                break
    if found >= 3:
        break

print(f'\n共检查了{found}个文件')
