"""Implementation of anonymizer service.""" import argparse from src.worker import Worker from src.anonymizers.polish_anonymizer import PolishAnonymizer from src.anonymizers.english_anonymizer import EnglishAnonymizer from src.anonymizers.russian_anonymizer import RussianAnonymizer def get_args(): """Gets command line arguments.""" parser = argparse.ArgumentParser(description="anonymizer") parser.add_argument( "-l", "--language", help="Language of the input text", default="pl" ) parser.add_argument("-m", "--method", help="Anonymization method", default="tag", choices=["delete", "tag", "pseudo"]) parser.add_argument("input_file", help="Path to input file") parser.add_argument("output_file", help="Path to output file") return parser.parse_args() def main(): """Runs the program.""" args = get_args() task_options = { "method": args.method, } anonymizers = { "pl": PolishAnonymizer, "en": EnglishAnonymizer, "ru": RussianAnonymizer, } anon = anonymizers.get(args.language, PolishAnonymizer)(task_options) anon.process(args.input_file, args.output_file) if __name__ == "__main__": main()