def fetch(self, start_date, end_date):
records = []<EOL>for two_months_range in self._generate_ranges(start_date, end_date):<EOL><INDENT>log.debug(two_months_range)<EOL>for record in self._fetch_missions_for_range(two_months_range[<NUM_LIT:0>], two_months_range[<NUM_LIT:1>]):<EOL><INDENT>records.append(record)<EOL><DEDENT><DEDENT>df = pd.DataFrame(records, columns=[<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT:start>',<EOL>'<STR_LIT:end>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>'<EOL>])<EOL>translate_column(df, '<STR_LIT>', {<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': '<STR_LIT>'<EOL>})<EOL>translate_column(df, '<STR_LIT>', {<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': '<STR_LIT>'<EOL>})<EOL>return df.drop_duplicates()<EOL>
Fetches official missions within the given date range