Mercurial > repos > jbrayet > rsat
comparison peakMotifs_wrapper.py @ 50:a21c2253cafc draft
Uploaded
author | jbrayet |
---|---|
date | Tue, 29 Sep 2015 07:37:29 -0400 |
parents | dce9495ac542 |
children | 9e193aa2b9d2 |
comparison
equal
deleted
inserted
replaced
49:94b3643ce679 | 50:a21c2253cafc |
---|---|
195 variable = "" | 195 variable = "" |
196 return variable | 196 return variable |
197 | 197 |
198 | 198 |
199 ###########################################################' | 199 ###########################################################' |
200 ## Function to recup results | 200 ## Functions to recup results |
201 | 201 |
202 def buildZipUrl(algoResults): | 202 def buildZipUrl(algoResults): |
203 """ | 203 """ |
204 Recup results give by RSAT server. | 204 Recup results give by RSAT server. |
205 algoResults -> result give by RSAT server | 205 algoResults -> response gave by RSAT server |
206 """ | 206 """ |
207 | 207 |
208 recupResult = str(algoResults) | 208 recupResult = str(algoResults) |
209 tabResults=recupResult.split("\n") | 209 tabResults=recupResult.split("\n") |
210 urlZip = tabResults[4].replace("\t","") | 210 urlZip = tabResults[4].replace("\t","") |
211 | 211 |
212 return urlZip | 212 return urlZip |
213 | 213 |
214 def recupRSATResult(urlResult,nameFile): | |
215 | |
216 """ | |
217 Recup results give by RSAT server. | |
218 urlResult -> URL gave by RSAT server | |
219 nameFile -> name of zip file in Galaxy path | |
220 """ | |
221 | |
222 ###########################################################' | |
223 ## Download RSAT results | |
224 urllib.urlretrieve(urlResult, nameFile) | |
225 #except IOError: | |
226 #logFile.write("\nResult URL is false") | |
227 #Logger.error("Result URL is false") | |
228 #logFile.write("\n"+nameFile+"\n") | |
229 | |
230 ###########################################################' | |
231 ## Decompress results | |
232 #try: | |
233 zfile = zipfile.ZipFile(nameFile, 'r') | |
234 #except IOError: | |
235 #logFile.write("No zip file") | |
236 #Logger.error("No zip file") | |
237 | |
238 tempflag = 0 | |
239 folderName ="" | |
240 | |
241 for i in zfile.namelist(): ## On parcourt l'ensemble des fichiers de l'archive | |
242 | |
243 #logFile.write(i+"\n") | |
244 ############################### | |
245 if tempflag ==0: | |
246 folderName = i | |
247 | |
248 tempflag = 1 | |
249 ############################### | |
250 | |
251 if i.endswith('/'): ## S'il s'agit d'un repertoire, on se contente de creer le dossier | |
252 os.makedirs(i) | |
253 else: | |
254 data = zfile.read(i) ## lecture du fichier compresse | |
255 fp = open(i, "wb") ## creation en local du nouveau fichier | |
256 fp.write(data) ## ajout des donnees du fichier compresse dans le fichier local | |
257 fp.close() | |
258 zfile.close() | |
259 | |
260 return folderName | |
214 | 261 |
215 ## Tested with python 2.6.6 | 262 ## Tested with python 2.6.6 |
216 peakMotifsVersion = '0.1 - 30/01/2015' | 263 peakMotifsVersion = '2.0 - 30/01/2015' |
217 | 264 |
218 ###########################################################' | 265 ###########################################################' |
219 # server dictionary | 266 # server dictionary |
220 serverDict = { | 267 serverDict = { |
221 | 268 |
415 while urllib.urlopen(urlResult).getcode() != 200: | 462 while urllib.urlopen(urlResult).getcode() != 200: |
416 #logFile.write(str(urllib.urlopen(urlResult).getcode())+"\n") | 463 #logFile.write(str(urllib.urlopen(urlResult).getcode())+"\n") |
417 time.sleep(5) | 464 time.sleep(5) |
418 | 465 |
419 #logFile.write(str(nameFile)+"\n") | 466 #logFile.write(str(nameFile)+"\n") |
420 | 467 #time.sleep(5) |
421 #while urllib.urlretrieve(urlResult, nameFile) | 468 #while urllib.urlretrieve(urlResult, nameFile) |
422 #try: | 469 #try: |
423 ###########################################################' | 470 |
424 ## Download RSAT results | 471 folderName=recupRSATResult(urlResult,nameFile) |
425 urllib.urlretrieve(urlResult, nameFile) | 472 |
426 #except IOError: | 473 while(not(os.path.exists(folderName+"peak-motifs_synthesis.html"))): |
427 #logFile.write("\nResult URL is false") | 474 os.popen("rm -rf "+folderName) |
428 #Logger.error("Result URL is false") | 475 recupRSATResult(urlResult,nameFile) |
429 | |
430 | |
431 #logFile.write("\n"+nameFile+"\n") | |
432 | |
433 ###########################################################' | |
434 ## Decompress results | |
435 #try: | |
436 zfile = zipfile.ZipFile(nameFile, 'r') | |
437 #except IOError: | |
438 #logFile.write("No zip file") | |
439 #Logger.error("No zip file") | |
440 | |
441 tempflag = 0 | |
442 folderName ="" | |
443 | |
444 for i in zfile.namelist(): ## On parcourt l'ensemble des fichiers de l'archive | |
445 | |
446 #logFile.write(i+"\n") | |
447 ############################### | |
448 if tempflag ==0: | |
449 folderName = i | |
450 | |
451 tempflag = 1 | |
452 ############################### | |
453 | |
454 if i.endswith('/'): ## S'il s'agit d'un repertoire, on se contente de creer le dossier | |
455 os.makedirs(i) | |
456 else: | |
457 data = zfile.read(i) ## lecture du fichier compresse | |
458 fp = open(i, "wb") ## creation en local du nouveau fichier | |
459 fp.write(data) ## ajout des donnees du fichier compresse dans le fichier local | |
460 fp.close() | |
461 zfile.close() | |
462 | 476 |
463 #logFile.write("\n"+folderName+"\n") | 477 #logFile.write("\n"+folderName+"\n") |
464 #logFile.write("\n"+outGalaxyValue+"\n") | 478 #logFile.write("\n"+outGalaxyValue+"\n") |
465 | 479 |
466 os.popen("cp "+folderName+"peak-motifs_synthesis.html "+outGalaxyValue) | 480 os.popen("cp "+folderName+"peak-motifs_synthesis.html "+outGalaxyValue) |