

def report_speed(self):
    now = time()
    if ((now - self._prev_time) >= self._update_interval):
        downloaded = self.status.downloaded
        try:
            speed = ((downloaded - self._prev_bytes) / (now - self._prev_time))
        except ZeroDivisionError:
            speed = 0
        if (not self.status.total_size):
            self._status_line = PROGRESS_NO_CONTENT_LENGTH.format(downloaded=humanize_bytes(downloaded), speed=humanize_bytes(speed))
        else:
            try:
                percentage = ((downloaded / self.status.total_size) * 100)
            except ZeroDivisionError:
                percentage = 0
            if (not speed):
                eta = '-:--:--'
            else:
                s = int(((self.status.total_size - downloaded) / speed))
                (h, s) = divmod(s, (60 * 60))
                (m, s) = divmod(s, 60)
                eta = '{0}:{1:0>2}:{2:0>2}'.format(h, m, s)
            self._status_line = PROGRESS.format(percentage=percentage, downloaded=humanize_bytes(downloaded), speed=humanize_bytes(speed), eta=eta)
        self._prev_time = now
        self._prev_bytes = downloaded
    self.output.write(((((CLEAR_LINE + ' ') + SPINNER[self._spinner_pos]) + ' ') + self._status_line))
    self.output.flush()
    self._spinner_pos = ((self._spinner_pos + 1) if ((self._spinner_pos + 1) != len(SPINNER)) else 0)

dataset/ETHPy150Open RoseOu/flasky/venv/lib/python2.7/site-packages/httpie/downloads.py ProgressReporterThread.report_speed/original