importargparseimportrequestsimportsysURL_single="https://biosig.lab.uq.edu.au/csm_ab/api/prediction_single"URL_pose="https://biosig.lab.uq.edu.au/csm_ab/api/prediction_pose"defmain(args):job_type=args.job_typejob_id=args.job_idparams={"job_id":job_id,}ifjob_type=='single':req=requests.get(URL_single,json=params)print(req.json())returnTrueelse:req=requests.get(URL_pose,data=params)print(req.json())returnTrueif__name__=="__main__":parser=argparse.ArgumentParser(description='Retrieve job results for CSM-AB')parser.add_argument('job_type',type=str,choices=['single','pose'],help='choose between single and pose prediction')parser.add_argument('job_id',type=str,help='Job identifier code generated upon submission')args=parser.parse_args()main(args)
importargparseimportrequestsimportsysURL_single="https://biosig.lab.uq.edu.au/csm_ab/api/prediction_single"URL_pose="https://biosig.lab.uq.edu.au/csm_ab/api/prediction_pose"defmain(args):ifargs.job_type=='single':ifargs.pdb_accession:data={"pdb_accession":args.pdb_accession}req=requests.post(URL_single,json=data)print(req.json())else:files={"pdb_file":open(args.pdb_file.name,'rb')}req=requests.post(URL_single,files=files)print(req.json())else:files={'receptor_file':open(args.receptor_file.name,'rb'),'pose_file':open(args.pose_file.name,'rb')}req=requests.post(URL_pose,files=files)print(req.json())if__name__=="__main__":parser=argparse.ArgumentParser(description='Job submission for CSM-AB')parser.add_argument('job_type',type=str,choices=['single','pose'],help='choose between single and pose prediction')parser.add_argument('--pdb_file',dest='pdb_file',type=argparse.FileType('r'),help='PDB file')parser.add_argument('--pdb_accession',dest='pdb_accession',type=str,help='Type PDB-ID')parser.add_argument('--receptor_file',dest='receptor_file',type=argparse.FileType('r'),help='PDB file')parser.add_argument('--pose_file',dest='pose_file',type=argparse.FileType('r'),help='PDB file')args=parser.parse_args()ifargs.job_type=='single':ifnot(args.pdb_fileorargs.pdb_accession):parser.error('For single job type, either --pdb_file or --pdb_accession must be provided.')else:ifnot(args.receptor_fileandargs.pose_file):parser.error('For pose job type, both --receptor_file and --pose_file must be provided.')main(args)
Comments (0)
HTTPSSSH
You can clone a snippet to your computer for local editing.
Learn more.