Cli
cli ¶
Command-line interface for equities-classifier.
identifiers = read_identifiers('H:\\EquClass_Test_Input.xlsx') module-attribute ¶
processflow = ProcessFlow(morningstar=True, motleyfool=True) module-attribute ¶
securities = processflow.run(identifiers) module-attribute ¶
main(argv: Sequence[str] | None = None) -> None ¶
Run the command-line interface.
Source code in src/equities_classifier/processflow/cli.py
def main(
argv: Sequence[str] | None = None,
) -> None:
"""Run the command-line interface."""
parser = _create_parser()
args = parser.parse_args(argv)
# No input/output parameters: start GUI.
if args.input is None and args.output is None:
run_gui()
return
# Input and output must be specified together.
if args.input is None or args.output is None:
parser.error("input and output must be specified together")
identifiers = read_identifiers(args.input)
processflow = ProcessFlow(morningstar=args.morningstar, motleyfool=args.motleyfool)
securities = processflow.run(identifiers)
write_excel(
securities,
args.output,
classifications=get_classification_output(args.morningstar, args.motleyfool),
provider_details=True,
)