fix: 修复风控判断错误,以及可能的阻塞问题 (#77)

* fix: 尝试修复风控判断错误,以及可能的阻塞问题

* fix: 继续修复
This commit is contained in:
ᴀᴍᴛᴏᴀᴇʀ
2024-04-25 22:56:47 +08:00
committed by GitHub
parent be4f62d4e1
commit 1ad82e513e
4 changed files with 36 additions and 26 deletions

View File

@@ -293,8 +293,8 @@ pub async fn download_video_pages(
),
});
if let Err(e) = results.into_iter().nth(4).unwrap() {
if let Ok(e) = e.downcast::<DownloadAbortError>() {
return Err(e.into());
if e.downcast_ref::<DownloadAbortError>().is_some() {
return Err(e);
}
}
let mut video_active_model: video::ActiveModel = video_model.into();
@@ -335,6 +335,7 @@ pub async fn dispatch_download_page(
}
Err(e) => {
if e.downcast_ref::<DownloadAbortError>().is_some() {
should_error = true;
is_break = true;
break;
}
@@ -472,8 +473,8 @@ pub async fn download_page(
});
// 查看下载视频的状态,该状态会影响上层是否 break
if let Err(e) = results.into_iter().nth(1).unwrap() {
if let Ok(e) = e.downcast::<DownloadAbortError>() {
return Err(e.into());
if let Ok(BiliError::RiskControlOccurred) = e.downcast::<BiliError>() {
bail!(DownloadAbortError());
}
}
let mut page_active_model: page::ActiveModel = page_model.into();