'Download a given list of URLs.'

def download(self, url_list):

    outtmpl = self.params.get(u'outtmpl', DEFAULT_OUTTMPL)
    if ((len(url_list) > 1) and (outtmpl != u'-') and (u'%' not in outtmpl) and (self.params.get(u'max_downloads') != 1)):
        raise SameFileError(outtmpl)
    for url in url_list:
        try:
            res = self.extract_info(url, force_generic_extractor=self.params.get(u'force_generic_extractor', False))
        except UnavailableVideoError:
            self.report_error(u'unable    to    download    video')
        except MaxDownloadsReached:
            self.to_screen(u'[info]    Maximum    number    of    downloaded    files    reached.')
            raise
        else:
            if self.params.get(u'dump_single_json', False):
                self.to_stdout(json.dumps(res))
    return self._download_retcode
