def __iter__(self): current_date = self.start_date while self.end_date >= current_date: with TemporaryFile() as temp_file: self.reader = ScribeReader( self.stream_name, s3_connections=[self.s3_connection], ostream=temp_file) for _ in self.reader.get_for_date(current_date): temp_file.flush() temp_file.seek(0) for line in temp_file: yield line temp_file.seek(0) temp_file.truncate(0) current_date += timedelta(1)