changeset 7:96a0c0163255 draft

planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/data_managers/data_manager_fetch_genome_dbkeys_all_fasta commit c6314fce6475715c091db463f26703440d71349c-dirty
author mvdbeek
date Thu, 25 Aug 2016 06:33:20 -0400
parents 8364a73bd363
children 14d9f1ffc1a9
files data_manager/data_manager_fetch_genome_all_fasta_dbkeys.py
diffstat 1 files changed, 6 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/data_manager/data_manager_fetch_genome_all_fasta_dbkeys.py	Thu Aug 25 06:12:32 2016 -0400
+++ b/data_manager/data_manager_fetch_genome_all_fasta_dbkeys.py	Thu Aug 25 06:33:20 2016 -0400
@@ -14,7 +14,7 @@
 try:
     # For Python 3.0 and later
     from urllib.request import urlopen
-    from io import StringIO
+    from io import BytesIO as StringIO
     from io import UnsupportedOperation
 except ImportError:
     # Fall back to Python 2's urllib2
@@ -37,13 +37,6 @@
     sys.exit(1)
 
 
-def read_urllib(response):
-    charset = response.headers.get_content_charset()
-    if not charset:
-        charset = 'utf-8'
-    return response.read().decode(charset)
-
-
 def get_dbkey_dbname_id_name( params, dbkey_description=None ):
     dbkey = params['param_dict']['dbkey_source']['dbkey']
     #TODO: ensure sequence_id is unique and does not already appear in location file
@@ -125,7 +118,7 @@
 
 def _write_sorted_fasta( sorted_names, fasta_offsets, sorted_fasta_filename, unsorted_fasta_filename ):
     unsorted_fh = open( unsorted_fasta_filename )
-    sorted_fh = open( sorted_fasta_filename, 'w+' )
+    sorted_fh = open( sorted_fasta_filename, 'wb+' )
     
     for name in sorted_names:
         offset = fasta_offsets[ name ]
@@ -211,7 +204,7 @@
 def _download_file(start, fh):
     tmp = tempfile.NamedTemporaryFile()
     tmp.write(start)
-    tmp.write(read_urllib(fh))
+    tmp.write(fh.read())
     tmp.flush()
     tmp.seek(0)
     return tmp
@@ -335,7 +328,7 @@
 def _stream_fasta_to_file( fasta_stream, target_directory, dbkey, dbkey_name, sequence_id, sequence_name, params, close_stream=True ):
     fasta_base_filename = "%s.fa" % sequence_id
     fasta_filename = os.path.join( target_directory, fasta_base_filename )
-    with open( fasta_filename, 'w+' ) as fasta_writer:
+    with open( fasta_filename, 'wb+' ) as fasta_writer:
 
         if isinstance( fasta_stream, list ) and len( fasta_stream ) == 1:
             fasta_stream = fasta_stream[0]
@@ -437,7 +430,7 @@
     
     filename = args[0]
     
-    params = loads( open( filename ).read().decode('utf-8'))
+    params = loads( open( filename ).read() )
     target_directory = params[ 'output_data' ][0]['extra_files_path']
     os.mkdir( target_directory )
     data_manager_dict = {}
@@ -455,7 +448,7 @@
     finally:
         cleanup_before_exit(tmp_dir)
     #save info to json file
-    open( filename, 'w' ).write( dumps( data_manager_dict ) )
+    open( filename, 'wb' ).write( dumps( data_manager_dict ) )
         
 if __name__ == "__main__":
     main()