@@ -70,21 +70,37 @@ def complete_url(tissue, psi):
7070 ]
7171}
7272
73+ def check_tissue_in_url (url , tissues ):
74+ in_url = False
75+ for tissue in tissues :
76+ if tissue in url :
77+ in_url = True
78+ return in_url
79+
80+ def _download (url , splicemap_dir ):
81+ r = requests .get (url )
82+ fname = Path (splicemap_dir )
83+ fname .mkdir (exist_ok = True )
84+ fname = fname / \
85+ unquote (Path (url ).name ).replace ('?download=1' , '' )
86+ print (fname )
87+ with open (fname , 'wb' ) as fd :
88+ fd .write (r .content )
89+
7390@click .command ()
7491@click .option ('--version' , help = 'SpliceMap version (currently SpliceMaps from gtex_v8 (hg38) supported)' )
7592@click .option ('--splicemap_dir' , help = 'Path to download SpliceMaps' )
76- def splicemap_download (version , splicemap_dir ):
93+ @click .option ('--tissues' , multiple = True , help = 'List of tissue names to download' )
94+ def splicemap_download (version , splicemap_dir , tissues = None ):
7795
7896 if version not in splicemap_url :
7997 raise (f'Version { version } is not supported.' )
8098
8199 print ('Downloading SpliceMaps...' )
82100
83101 for url in tqdm (splicemap_url [version ]):
84- r = requests .get (url )
85- fname = Path (splicemap_dir )
86- fname .mkdir (exist_ok = True )
87- fname = fname / unquote (Path (url ).name ).replace ('?download=1' , '' )
88-
89- with open (fname , 'wb' ) as fd :
90- fd .write (r .content )
102+ if tissues :
103+ if check_tissue_in_url (url , tissues ):
104+ _download (url , splicemap_dir )
105+ else :
106+ _download (url , splicemap_dir )
0 commit comments