百度网盘下载错误控制
        :param act: 出错时的行为, 有 download
        :param errno: 出错时的errno,这个要配合act才有实际意义
        :param callback: 返回时的调用函数, 为空时返回None
        :param args: 给callback函数的参数tuple
        :param kwargs: 给callback函数的带名参数字典

        在本函数调用后一定可以解决提交过来的问题, 在外部不需要重复检查是否存在原问题

def __err_handler(self, act, errno, callback=None, args=(), kwargs=None):
        """百度网盘下载错误控制
        :param act: 出错时的行为, 有 download
        :param errno: 出错时的errno,这个要配合act才有实际意义
        :param callback: 返回时的调用函数, 为空时返回None
        :param args: 给callback函数的参数tuple
        :param kwargs: 给callback函数的带名参数字典

        在本函数调用后一定可以解决提交过来的问题, 在外部不需要重复检查是否存在原问题
        """
        kwargs = kwargs or {}
        errno = int(errno)

        def err_handler_download():
            if errno == 112:
                # 页面失效, 重新刷新页面
                url = 'http://pan.baidu.com/disk/home'
                self.session.get(url)

            return

        def err_handler_upload():
            # 实际出问题了再写
            return

        def err_handler_generic():
            return

        _act = {'download': err_handler_download,
                'upload': err_handler_upload,
                'generic': err_handler_generic
                }

        if act not in _act:
            raise Exception('行为未定义, 无法处理该行为的错误')

        if callback:
            return callback(*args, **kwargs)
        return None