'Downloads the link\'s HTML content, don\'t use if you are batch async
downloading articles
recursion_counter (currently 1) stops refreshes that are potentially
infinite'

def download(self, input_html=None, title=None, recursion_counter=0):

    if (input_html is None):
        try:
            html = network.get_html_2XX_only(self.url, self.config)
        except requests.exceptions.RequestException as e:
            self.download_state = ArticleDownloadState.FAILED_RESPONSE
            self.download_exception_msg = str(e)
            log.debug(('Download    failed    on    URL    %s    because    of    %s' % (self.url, self.download_exception_msg)))
            return
    else:
        html = input_html
    if self.config.follow_meta_refresh:
        meta_refresh_url = extract_meta_refresh(html)
        if (meta_refresh_url and (recursion_counter < 1)):
            return self.download(input_html=network.get_html(meta_refresh_url), recursion_counter=(recursion_counter + 1))
    self.set_html(html)
    self.set_title(title)
