CVS文件转Json格式

需求

读取CSV文件,将数据组合成新的JSON格式输出打印

如果出现不足5列的,空的既跳过

测试用例

bash 复制代码
import csv

def process_csv_file(filename):
    """
    处理CSV文件,获取C列(domain)和E列(valid)的值
    注意:CSV列索引从0开始,C列是第3列(索引2),E列是第5列(索引4)
    """
    results = []
    
    with open(filename, 'r', encoding='utf-8') as file:
        # 创建CSV阅读器
        csv_reader = csv.reader(file)
        
        # 跳过表头(如果有)
        headers = next(csv_reader, None)
        print(f"CSV表头: {headers}")
        
        # 处理每一行
        for row_num, row in enumerate(csv_reader, start=2):  # 行号从2开始(跳过表头)
            if len(row) >= 5:  # 确保行至少有5列
                domain = row[2]  # C列,索引2
                valid = row[4]   # E列,索引4
                
                results.append({
                    'row': row_num,
                    'domain': domain,
                    'valid': valid
                })
            else:
                print(f"警告: 第{row_num}行列数不足,跳过")
    
    return results


if __name__ == '__main__':
    # 使用示例
    results = process_csv_file('risk_mail_domain_verify_record_202602041439.csv')
    for result in results:
        print(f"行 {result['row']}: domain={result['domain']}, valid={result['valid']}")
相关推荐
oliver_sys_log20 小时前
老项目 json-lib 2.4 JSONTokener 精度丢失问题排查
json
IT_Octopus1 天前
JSON 日志里的 `{“$ref“:“$.xxx“}`:从 fastjson 兼容包到原生 fastjson2 的迁移实录
开发语言·python·json
数据狐(Datafox)1 天前
mercadolibre.item_get 工程实战:美客多商品详情API技术解析与落地应用
java·人工智能·mysql·json
Fcy6481 天前
Linux下 应⽤层⾃定义协议与序列化(JSON方法)
linux·json
半亩码田2 天前
C#转Python第4.4篇:JSON 处理:json 模块 vs System.Text.Json
python·c#·json
清水白石0083 天前
Python 类型设计深度解析:TypedDict 能否替代 dataclass?从 JSON 数据边界到 API 设计的最佳实践
java·python·json
DevOpenClub3 天前
网页采集如何稳定输出结构化数据:JSON、链接与快照三阶段流水线
数据库·json·api
霸道流氓气质3 天前
Spring AI 结构化输出:JSON Mode 与 BeanOutputConverter
人工智能·spring·json
SelectDB4 天前
StarRocks 适合做日志分析吗?
数据分析·json·自动化运维
SelectDB4 天前
为什么 JSON 正在成为分析数据库新的竞争点?
数据库·json·agent