@@ -261,32 +261,28 @@ def main():
261261 max_tries = 5
262262 while flag < max_tries :
263263 flag = flag + 1
264- tmp_dir = '' .join (random .choice ('0123456789abcdefghijklmnopqrstuvwxyz' ) for i in range (8 ))
265- tmp_dir = 'downloads_' + tmp_dir
266- subprocess .call (["mkdir" ,tmp_dir ])
267- # Use temporary directory to avoid data from different time
268- # downloaded to same folder
269- get_paho_data (dir = tmp_dir )
270- issue = EpiDate .today ().get_ew ()
271- # Check to make sure we downloaded a file for every week
272- issueset = set ()
273- files = glob .glob ('%s/*.csv' % tmp_dir )
274- for filename in files :
275- with open (filename ,'r' ) as f :
276- _ = f .readline ()
277- data = f .readline ().split (',' )
278- issueset .add (data [6 ])
279- db_error = False
280- if len (issueset ) >= 53 : # Shouldn't be more than 53
264+ with tempfile .TemporaryDirectory () as tmp_dir :
265+ # Use temporary directory to avoid data from different time
266+ # downloaded to same folder
267+ get_paho_data (dir = tmp_dir )
268+ issue = EpiDate .today ().get_ew ()
269+ # Check to make sure we downloaded a file for every week
270+ issueset = set ()
271+ files = glob .glob (f"{ tmp_dir } /*.csv" )
281272 for filename in files :
282- try :
283- update_from_file (issue , date , filename , test_mode = args .test )
284- subprocess .call (["rm" ,filename ])
285- except :
286- db_error = True
287- subprocess .call (["rm" ,"-r" ,tmp_dir ])
288- if not db_error :
289- break # Exit loop with success
273+ with open (filename ) as f :
274+ _ = f .readline ()
275+ data = f .readline ().split ("," )
276+ issueset .add (data [6 ])
277+ db_error = False
278+ if len (issueset ) >= 53 : # Shouldn't be more than 53
279+ for filename in files :
280+ try :
281+ update_from_file (issue , date , filename , test_mode = args .test )
282+ except :
283+ db_error = True
284+ if not db_error :
285+ break # Exit loop with success
290286 if flag >= max_tries :
291287 print ("WARNING: Database `paho_dengue` did not update successfully" )
292288
0 commit comments