def refile(name): in_file_name = '%s/%s.csv' % (FILE_PATH,name) in_file = open(in_file_name) reader = fixing_nones(UnicodeReader(in_file)) open_files = {} for line in reader: date_field = line[4] date = datetime.strptime(date_field,'%a %b %d %H:%M:%S +0000 %Y') file_name = "%s/%s-%d-%02d.csv" % (FILE_PATH,name,date.year, date.month) if file_name in open_files: _,writer = open_files[file_name] else: file = open(file_name,'ab') writer = UnicodeWriter(file) open_files[file_name] = (file,writer) writer.writerow(line) for file_name in open_files: file,_ = open_files[file_name] file.close() in_file.close() files = sorted(matching(os.listdir(FILE_PATH),name+'-'),reverse=True) if files[0]: os.rename("%s/%s" % (FILE_PATH,files[0]), in_file_name)
def append_csv(tweets, filename): file = open(filename, 'ab') writer = UnicodeWriter(file) count = 0 for tweet in csv_fields(tweets): writer.writerow(tweet) count += 1 file.close() report("%d tweets added to %s" % (count, filename))