Skip to content

Commit

Permalink
Merge pull request #237 from fasiondog/feature/finance
Browse files Browse the repository at this point in the history
fixed 板块信息导入时,如果网络不好,未获取到当前板块信息时,会把之前的板块信息删除
  • Loading branch information
fasiondog committed Apr 20, 2024
2 parents 36b2408 + f6b663c commit 1e2ba49
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 6 deletions.
32 changes: 28 additions & 4 deletions hikyuu/data/em_block_to_mysql.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,33 +14,57 @@
def em_import_block_to_mysql(connect, code_market_dict, categorys=('行业板块', '概念板块', '地域板块', '指数板块')):
all_block_info = {}

success_fetch_hy = False
if '行业板块' in categorys:
hku_info("获取行业板块信息")
x = get_all_hybk_info(code_market_dict)
if x:
all_block_info["行业板块"] = x
success_fetch_hy = True

if '行业板块' in categorys:
success_fetch_gn = False
if '概念板块' in categorys:
hku_info("获取概念板块信息")
x = get_all_gnbk_info(code_market_dict)
if x:
all_block_info["概念板块"] = x
success_fetch_gn = True

if '行业板块' in categorys:
success_fetch_dy = False
if '地域板块' in categorys:
hku_info("获取地域板块信息")
x = get_all_dybk_info(code_market_dict)
if x:
all_block_info["地域板块"] = x
success_fetch_dy = True

if '行业板块' in categorys:
success_fetch_zs = False
if '指数板块' in categorys:
hku_info("获取指数板块信息")
x = get_all_zsbk_info(code_market_dict)
if x:
all_block_info["指数板块"] = x
success_fetch_zs = True

blks = []
if success_fetch_hy:
blks.append('行业板块')
if success_fetch_gn:
blks.append('概念板块')
if success_fetch_dy:
blks.append('地域板块')
if success_fetch_zs:
blks.append('指数板块')

if not blks:
return

hku_info("更新数据库")
cur = connect.cursor()
sql = "delete from hku_base.block where category in ('行业板块', '概念板块', '地域板块', '指数板块')"
if len(blks) == 1:
sql = f"delete from hku_base.block where category in ({blks[0]})"
else:
sql = f"delete from hku_base.block where category in {tuple(blks)}"
cur.execute(sql)

insert_records = []
Expand Down
28 changes: 26 additions & 2 deletions hikyuu/data/em_block_to_sqlite.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,33 +14,58 @@
def em_import_block_to_sqlite(connect, code_market_dict, categorys=('行业板块', '概念板块', '地域板块', '指数板块')):
all_block_info = {}

success_fetch_hy = False
if '行业板块' in categorys:
hku_info("获取行业板块信息")
x = get_all_hybk_info(code_market_dict)
if x:
all_block_info["行业板块"] = x
success_fetch_hy = True

success_fetch_gn = False
if '概念板块' in categorys:
hku_info("获取概念板块信息")
x = get_all_gnbk_info(code_market_dict)
if x:
all_block_info["概念板块"] = x
success_fetch_gn = True

success_fetch_dy = False
if '地域板块' in categorys:
hku_info("获取地域板块信息")
x = get_all_dybk_info(code_market_dict)
if x:
all_block_info["地域板块"] = x
success_fetch_dy = True

success_fetch_zs = False
if '指数板块' in categorys:
hku_info("获取指数板块信息")
x = get_all_zsbk_info(code_market_dict)
if x:
all_block_info["指数板块"] = x
success_fetch_zs = True

blks = []
if success_fetch_hy:
blks.append('行业板块')
if success_fetch_gn:
blks.append('概念板块')
if success_fetch_dy:
blks.append('地域板块')
if success_fetch_zs:
blks.append('指数板块')

if not blks:
return

hku_info("更新数据库")
cur = connect.cursor()
sql = "delete from block where category in ('行业板块', '概念板块', '地域板块', '指数板块')"
if len(blks) == 1:
sql = f"delete from block where category in ({blks[0]})"
else:
sql = f"delete from block where category in {tuple(blks)}"
hku_info(sql)
cur.execute(sql)

insert_records = []
Expand All @@ -56,7 +81,6 @@ def em_import_block_to_sqlite(connect, code_market_dict, categorys=('行业板

connect.commit()
cur.close()
pass


if __name__ == "__main__":
Expand Down

0 comments on commit 1e2ba49

Please sign in to comment.