# coding:utf-8
# 使用说明：先从通达信里面，选择板块，然后右上角的选项->数据导出，然后把数据复制到C:/Users/Administrator/Desktop/temp/概念板块.csv里面。导入即可，导入之后处理一下，将000233这种变成SZ000233，excel公式是：=IF(OR(LEFT(D2,2)="60",LEFT(D2,2)="68"),"SH",IF(OR(LEFT(D2,2)="30",LEFT(D2,1)="0"),"SZ",IF(LEFT(D2,1)="8","BJ","")))

import pandas as pd
from sqlalchemy import create_engine

def import_concept_sectors(file_path, db_url, table_name):
    """
    从CSV文件导入概念板块数据到数据库。

    Parameters:
    -----------
    file_path : str
        CSV文件的路径
    db_url : str
        数据库连接URL
    table_name : str, optional
        要导入的数据库表名，默认为'gp_gnbk'

    Returns:
    --------
    bool
        导入成功返回True，失败返回False
    """
    try:
        # 读取 CSV 文件
        df = pd.read_csv(file_path, dtype={'gp_code': str}, encoding='gbk')
        
        # 创建数据库连接
        engine = create_engine(db_url)

        # 将数据写入数据库表
        df.to_sql(table_name, con=engine, if_exists='replace', index=False)
        
        print(f"数据已成功导入数据库表 '{table_name}'")
        return True
        
    except Exception as e:
        print(f"导入数据时发生错误: {str(e)}")
        return False

if __name__ == "__main__":
    # 示例调用

    db_url = 'mysql+pymysql://root:Chlry#$.8@192.168.18.199:3306/db_gp_cj'
    file_path = "C:/Users/Administrator/Desktop/temp/行业板块.csv"
    import_concept_sectors(file_path, db_url, "gp_hybk")
    # file_path = "C:/Users/Administrator/Desktop/temp/概念板块.csv"
    # import_concept_sectors(file_path, db_url, "gp_gnbk")