import os import logging from excel_stock_importer import ExcelStockImporter # 设置日志 logging.basicConfig(level=logging.INFO) def main(): # 数据库配置 db_config = { 'host': '127.0.0.1', 'database': 'fintech', 'user': 'root', 'password': 'secret', 'port': 3306 } # Excel文件路径 - 尝试不同的路径 excel_files = [ "stock_list.xlsx", # 当前目录 "./finance/stock_list.xlsx", # 当前目录(明确指定) os.path.join(os.getcwd(), "./finance/stock_list.xlsx"), # 绝对路径 ] print("=== 当前工作目录 ===") print(f"工作目录: {os.getcwd()}") print(f"目录内容: {os.listdir('.')}") # 初始化导入器 importer = ExcelStockImporter(db_config) found_file = None for excel_file in excel_files: if os.path.exists(excel_file): found_file = excel_file print(f"找到文件: {excel_file}") break else: print(f"文件不存在: {excel_file}") if not found_file: print("未找到stock_list.xlsx文件,请检查:") print("1. 文件名是否正确(包括扩展名)") print("2. 文件是否在当前目录") print("3. 文件权限是否正常") return # 验证数据 print("\n=== 验证数据 ===") validation_result = importer.validate_data(found_file) print(f"数据验证结果: {'通过' if validation_result['valid'] else '失败'}") if 'total_rows' in validation_result: print(f"总行数: {validation_result['total_rows']}") print(f"行业列表: {validation_result.get('industries', [])}") print(f"交易所列表: {validation_result.get('exchanges', [])}") if validation_result.get('duplicate_stocks'): print(f"重复股票代码: {validation_result['duplicate_stocks']}") if validation_result.get('valid'): # 导入数据 print("\n=== 导入数据 ===") success = importer.import_to_database(found_file) print(f"导入结果: {'成功' if success else '失败'}") else: print(f"数据验证失败: {validation_result.get('message', '未知错误')}") if __name__ == "__main__": main()