forked from DongboShi/wos_parser
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathparser_proc_main.py
More file actions
32 lines (25 loc) · 1.21 KB
/
parser_proc_main.py
File metadata and controls
32 lines (25 loc) · 1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from paper_info_load_api import load_paper_input
from paper_info_load_api import paper_info_proc
from paper_info_load_api import PAPER_INPUT_UNIQ_DIR
from proc_history_manager import load_history_uts
from state_code_analysis import load_state_code
from parallel_processor import process_with_concurrency
import argparse
def run_parser():
"""Entry point with sequential or concurrent execution modes"""
arg_parser = argparse.ArgumentParser(description='WOS Parser - Process Web of Science data')
arg_parser.add_argument('--parallel', action='store_true',
help='Enable concurrent processing')
arg_parser.add_argument('--workers', type=int, default=None,
help='Worker count for parallel mode (default: auto-detect)')
options = arg_parser.parse_args()
load_state_code()
load_history_uts()
if options.parallel:
print("==> Concurrent processing mode active")
process_with_concurrency(paper_info_proc, PAPER_INPUT_UNIQ_DIR, workers=options.workers)
else:
print("==> Sequential processing mode active")
load_paper_input(paper_info_proc, PAPER_INPUT_UNIQ_DIR)
if __name__ == '__main__':
run_parser()