refactor(migrate): 优化数据迁移逻辑,增加迁移验证,修复关键词迁移错误。

This commit is contained in:
wood 2024-09-09 20:12:56 +08:00
parent 52f902354e
commit f56395704e

View File

@ -19,22 +19,21 @@ def migrate_data(json_file, db_file):
# 读取 JSON 文件 # 读取 JSON 文件
with open(json_file, 'r') as f: with open(json_file, 'r') as f:
data = json.load(f) keywords = json.load(f)
logger.info(f"JSON file loaded: {json_file}") logger.info(f"JSON file loaded: {json_file}")
if not isinstance(keywords, list):
raise ValueError(f"Expected a list in JSON file, but got {type(keywords)}")
# 迁移关键词 # 迁移关键词
keywords = data.get('keywords', [])
for keyword in keywords: for keyword in keywords:
db.add_keyword(keyword) db.add_keyword(keyword)
logger.info(f"Migrated {len(keywords)} keywords")
logger.info(f"Migration complete. Migrated {len(keywords)} keywords.")
# 迁移白名单 # 验证迁移
whitelist = data.get('whitelist', []) migrated_keywords = db.get_all_keywords()
for domain in whitelist: logger.info(f"Verified {len(migrated_keywords)} keywords in the database.")
db.add_whitelist(domain)
logger.info(f"Migrated {len(whitelist)} whitelist entries")
logger.info(f"Migration complete. Keywords: {len(keywords)}, Whitelist: {len(whitelist)}")
except Exception as e: except Exception as e:
logger.error(f"An error occurred during migration: {str(e)}") logger.error(f"An error occurred during migration: {str(e)}")