def add_task( api: BaiduPCSApi, task_url: str, remotedir: str, file_types: List[FileType] = [FileType.Media], ): if is_magnet(task_url): logger.warning("Add cloud task: magnet: %s", task_url) pmfs = api.magnet_info(task_url) selected_idx = [] for idx, pmf in enumerate(pmfs, 1): ext = os.path.splitext(pmf.path)[-1] for file_type in file_types: if file_type.sift(ext): selected_idx.append(idx) break if not selected_idx: logger.warning("`add_task`: No selected idx for %s", task_url) return task_id = api.add_magnet_task(task_url, remotedir, selected_idx) tasks(api, task_id) else: logger.warning("Add cloud task: %s", task_url) task_id = api.add_task(task_url, remotedir)
def add_task(api: BaiduPCSApi, task_url: str, remotedir: str): task_id = api.add_task(task_url, remotedir) tasks(api, task_id)