diff options
Diffstat (limited to 'Code/download_and_map.py')
-rw-r--r-- | Code/download_and_map.py | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/Code/download_and_map.py b/Code/download_and_map.py index 502b5e5..bceeb82 100644 --- a/Code/download_and_map.py +++ b/Code/download_and_map.py @@ -19,11 +19,12 @@ import fnmatch import time import re import shutil +import redis +import json from datetime import datetime ########################################################################################## -from configure import DAILY_MAP_NUMBER, MIN_FASTQ_FILE_SIZE, RNA_SEQ_INFO_FILE, DOWNLOADED_SRA_ID_LOG_FILE, IGNORED_SRA_ID_LOG_FILE, UPDATE_NETWORK_LOG_FILE, MAPPED_RDATA_DIR, RAW_RDATA_DIR, SALMON_MAP_RESULT_DIR - +from configure import DAILY_MAP_NUMBER, MIN_FASTQ_FILE_SIZE, RNA_SEQ_INFO_FILE, DOWNLOADED_SRA_ID_LOG_FILE, IGNORED_SRA_ID_LOG_FILE, UPDATE_NETWORK_LOG_FILE, MAPPED_RDATA_DIR, RAW_RDATA_DIR, SALMON_MAP_RESULT_DIR, REDIS_CHANNEL ########################################################################################## def glob_files(directory, pattern): @@ -385,6 +386,16 @@ def reverse_lines(fname, fname2): content = ''.join(lines) f2.write(content) + +def publish(mapped_data_directory): + r = redis.Redis(host='118.25.96.118', port=6379, db=0) + for fname in glob.glob('%s/*_quant.txt' % (mapped_data_directory.rstrip('/'))): + file_basename = os.path.basename(fname) + with open(fname, 'r') as f: + data = f.read() + r.publish(REDIS_CHANNEL, json.dumps({'filename':file_basename, 'data':data})) + time.sleep(1) + ## main # For filtering RNA-seq data @@ -433,6 +444,7 @@ if not os.path.isdir(MAPPED_RDATA_DIR): # after mapping is finished, move all resulting files to MAPPED_RDATA_DIR if glob.glob('%s/*_quant.txt' % (SALMON_MAP_RESULT_DIR.rstrip('/'))) != []: + publish(SALMON_MAP_RESULT_DIR) cmd = 'mv %s/*_quant.txt %s' % (SALMON_MAP_RESULT_DIR.rstrip('/'), MAPPED_RDATA_DIR) os.system(cmd) print('[download_and_map.py] Done. Check directory %s.' % (os.path.abspath(MAPPED_RDATA_DIR))) |