LSHTM_analysis/dynamut/examples.py

86 lines
3 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Fri Feb 12 12:15:26 2021
@author: tanu
"""
import os
homedir = os.path.expanduser('~')
os.chdir (homedir + '/git/LSHTM_analysis/dynamut')
from get_results import *
from submit import *
#%%#####################################################################
#EXAMPLE RUN for different stages
#=====================
# STAGE: submit.py
#=====================
my_host = 'http://biosig.unimelb.edu.au'
my_prediction_url = f"{host}/dynamut/prediction_list"
print(prediction_url)
my_outdir = homedir + '/git/LSHTM_analysis/dynamut'
my_chain = 'A'
my_email = 'tanushree.tunstall@lshtm.ac.uk'
my_pdb_file = homedir + '/git/Data/streptomycin/input/gid_complex.pdb'
my_mutation_list = homedir + '/git/LSHTM_analysis/dynamut/example_input/snp_test1.csv'
my_suffix = 'gid_test1'
#----------------------------------------------
# example 1: 2 snps in a file
#----------------------------------------------
submit_dynamut(host_url = my_host
, pdb_file = my_pdb_file
, mutation_list = my_mutation_list
, chain = my_chain
, email_address = my_email
, prediction_url = my_prediction_url
, output_dir = my_outdir
, outfile_suffix = my_suffix)
#%%###################################################################
#=====================
# STAGE:get_results.py
#=====================
my_host = 'http://biosig.unimelb.edu.au'
my_outdir = homedir + '/git/LSHTM_analysis/dynamut'
#----------------------------------------------
# example 1: multiple urls in a single file
#----------------------------------------------
my_url_file_multiple = homedir + '/git/LSHTM_analysis/dynamut/dynamut_temp/dynamut_result_url_batch_multiple.txt'
print(my_url_file_multiple)
my_suffix = 'multiple'
get_results(url_file = my_url_file_multiple
, host_url = my_host
, output_dir = my_outdir
, outfile_suffix = my_suffix)
#----------------------------------------------
# example 2: single url in a file
#----------------------------------------------
my_url_file_single = homedir + '/git/LSHTM_analysis/dynamut/dynamut_temp/dynamut_result_url_batch_single.txt'
print(my_url_file_single)
my_suffix = 'single'
get_results(my_url_file_single
, host_url = my_host
, output_dir = my_outdir
, outfile_suffix = my_suffix)
#%%###################################################################
url = 'http://biosig.unimelb.edu.au/dynamut/results_prediction/161296287365'
host_url = 'http://biosig.unimelb.edu.au'
prediction_number = re.search(r'([0-9]+$)', url).group(0)
print(prediction_number)
dynamut_results_dir = '/home/tanu/git/LSHTM_analysis/dynamut/dynamut_results'
tgz_url = f"{host_url}/dynamut/results_file/results_" + prediction_number + '.tar.gz'
print(tgz_url)
outfile_suffix = 'foo'
target_path = dynamut_results_dir + '/' + outfile_suffix + '_results_' + prediction_number + '.tar.gz'
response_tgz = requests.get(tgz_url, stream = True)
if response_tgz.status_code == 200:
with open(target_path, 'wb') as f:
f.write(response_tgz.raw.read())