Mercurial > repos > recetox > msmetaenhancer
diff msmetaenhancer_wrapper.py @ 0:053ce79ed564 draft
"planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msmetaenhancer commit 2c9c75f7d0c5fcadf1fe0284dd767ea5c6f6be51"
author | recetox |
---|---|
date | Tue, 11 Jan 2022 15:12:26 +0000 |
parents | |
children | 4ae5b466a805 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/msmetaenhancer_wrapper.py Tue Jan 11 15:12:26 2022 +0000 @@ -0,0 +1,43 @@ +import argparse +import asyncio +import sys + + +from MSMetaEnhancer import Application + + +def main(argv): + parser = argparse.ArgumentParser(description="Annotate MSP file.") + parser.add_argument("--input_file", type=str, help="Path to query spectra file in MSP format.") + parser.add_argument("--output_file", type=str, help="Path to output spectra file.") + parser.add_argument("--jobs", type=str, help="Sequence of conversion jobs to be used.") + args = parser.parse_args() + + app = Application() + + # import .msp file + app.load_spectra(args.input_file, file_format='msp') + + # curate given metadata + app.curate_spectra() + + # specify requested services and jobs + services = ['PubChem', 'CTS', 'CIR', 'NLM'] + + if len(args.jobs) != 0: + jobs = [] + for job in args.jobs.split(","): + if len(job) != 0: + jobs.append(job.split()) + asyncio.run(app.annotate_spectra(services, jobs)) + else: + # execute without jobs parameter to run all possible jobs + asyncio.run(app.annotate_spectra(services)) + + # export .msp file + app.save_spectra(args.output_file, file_format="msp") + return 0 + + +if __name__ == "__main__": + main(argv=sys.argv[1:])