#!/usr/bin/env python3 """ 独立命令行导入脚本。 用法: python run_import.py # 增量导入(MERGE,不删除现有数据) python run_import.py --clear # 清空图谱后全量重新导入 python run_import.py ldj # 仅导入鹿鼎记 python run_import.py dtslz tlbb --clear # 清空后导入指定小说 """ import sys from dotenv import load_dotenv from graph_query import get_driver from graph_builder import build_all_graphs, SUPPORTED_NOVELS load_dotenv() def main(): clear = "--clear" in sys.argv novels = [arg for arg in sys.argv[1:] if not arg.startswith("--")] selected = novels or list(SUPPORTED_NOVELS) print("Connecting to Neo4j...") driver = get_driver() driver.verify_connectivity() print("Connected.\n") build_all_graphs(driver, novels=selected, clear=clear) print("\nGraph stats:") from graph_query import get_graph_stats for k, v in get_graph_stats().items(): print(f" {k}: {v}") driver.close() if __name__ == "__main__": main()