# coding=utf-8 import csv import pymysql # 本地 # db_host = '127.0.0.1' # db_port = 3306 # db_user = 'root' # db_password = '123456' # db_name = 'crawler' # 测试服 # db_host = '47.112.242.103' # db_port = 17601 # db_user = 'ccwtdm' # db_password = 'fhRZLEu562wi23M4QC4iYq615UZEvgeB' # db_name = 'chace' # 正式服 db_host = '119.23.173.194' db_port = 17600 db_user = 'ccwfinances' db_password = 'CCWfinacial@231215#' db_name = 'chace' def turn_num(s): s_num = 0 if '万亿' in s: s_num = float(s.replace('万亿','')) * 100000000 elif '亿' in s: s_num = float(s.replace('亿','')) * 10000 elif '万' in s: s_num = float(s.replace('万','')) return s_num file = 'company_finance_details.csv' with open(file,'r') as file: company_finance_details_list_csv = csv.reader(file,delimiter=',') company_finance_details_list = [] for company_finance_details_csv in company_finance_details_list_csv: company_finance_details_list.append(company_finance_details_csv) del company_finance_details_list[0] for company_finance_details in company_finance_details_list: stock_code = company_finance_details[0] stock_name = company_finance_details[1] company_name = company_finance_details[2] del company_finance_details[0:3] TotalAssets_2022 = turn_num(company_finance_details[0]) TotalAssets_2021 = turn_num(company_finance_details[1]) TotalAssets_2020 = turn_num(company_finance_details[2]) SalesProceeds_2022 = turn_num(company_finance_details[3]) SalesProceeds_2021 = turn_num(company_finance_details[4]) SalesProceeds_2020 = turn_num(company_finance_details[5]) LRZE_2022 = turn_num(company_finance_details[6]) LRZE_2021 = turn_num(company_finance_details[7]) LRZE_2020 = turn_num(company_finance_details[8]) JLR_2022 = turn_num(company_finance_details[9]) JLR_2021 = turn_num(company_finance_details[10]) JLR_2020 = turn_num(company_finance_details[11]) FZZJ_2022 = turn_num(company_finance_details[12]) FZZJ_2021 = turn_num(company_finance_details[13]) FZZJ_2020 = turn_num(company_finance_details[14]) JZC_2022 = TotalAssets_2022 - FZZJ_2022 JZC_2021 = TotalAssets_2021 - FZZJ_2021 JZC_2020 = TotalAssets_2020 - FZZJ_2020 Ratal_2022 = turn_num(company_finance_details[15]) Ratal_2021 = turn_num(company_finance_details[16]) Ratal_2020 = turn_num(company_finance_details[17]) db = pymysql.connect(user=db_user, passwd=db_password, db=db_name, host=db_host, port=int(db_port), charset="utf8mb4", use_unicode=True) cursor = db.cursor(pymysql.cursors.DictCursor) sql = "INSERT INTO ccw_company_finance_details(stock_code,stock_name,company_name,TotalAssets_2022,TotalAssets_2021,TotalAssets_2020,SalesProceeds_2022,SalesProceeds_2021,SalesProceeds_2020,LRZE_2022,LRZE_2021,LRZE_2020,JLR_2022,JLR_2021,JLR_2020,JZC_2022,JZC_2021,JZC_2020,Ratal_2022,Ratal_2021,Ratal_2020,is_delisted) VALUES('%s','%s','%s',%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,0)" % ( stock_code,stock_name,company_name, TotalAssets_2022,TotalAssets_2021,TotalAssets_2020, SalesProceeds_2022,SalesProceeds_2021,SalesProceeds_2020, LRZE_2022,LRZE_2021,LRZE_2020, JLR_2022,JLR_2021,JLR_2020, JZC_2022,JZC_2021,JZC_2020, Ratal_2022,Ratal_2021,Ratal_2020 ) print(sql) cursor.execute(sql) db.commit() db.close()