{"record":{"id":"5073dd9e95f7f1ae","repo":"tonhowtf/omniget","slug":"n-o-achei-coment-rios-nessa-parte-ela-pode-ter-sido-removida","errorCode":null,"errorMessage":"não achei comentários nessa parte — ela pode ter sido removida","messagePattern":"não achei comentários nessa parte — ela pode ter sido removida","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src-tauri/src/platforms/bilibili/danmaku/export.rs","lineNumber":224,"sourceCode":"fn friendly(e: BilibiliError, with_account: bool) -> anyhow::Error {\n    match e {\n        BilibiliError::NotLoggedIn | BilibiliError::CookieMissing => anyhow!(\n            \"esse conteúdo pede a sessão do Bilibili — entre na conta pelo gerenciador de cookies e tente de novo\"\n        ),\n        BilibiliError::PremiumRequired if with_account => anyhow!(\n            \"a conta conectada não tem acesso a esse conteúdo pago\"\n        ),\n        BilibiliError::PremiumRequired => anyhow!(\n            \"conteúdo pago: conecte uma conta do Bilibili que já tenha a compra\"\n        ),\n        BilibiliError::GeoBlocked => {\n            anyhow!(\"o Bilibili bloqueia esse conteúdo na sua região; tente com proxy\")\n        }\n        BilibiliError::RateLimited => {\n            anyhow!(\"o Bilibili está limitando as requisições; espere um pouco e repita\")\n        }\n        BilibiliError::ContentUnavailable => {\n            anyhow!(\"não achei comentários nessa parte — ela pode ter sido removida\")\n        }\n        other => anyhow!(\"{}\", other.i18n_key()),\n    }\n}\n\nfn collect_parts(parsed: &parser::ParsedContent) -> Vec<DanmakuPart> {\n    let mut out = Vec::new();\n    for (i, item) in parsed.items.iter().enumerate() {\n        let cid = match item.cid {\n            Some(c) if c > 0 => c,\n            _ => continue,\n        };\n        let page = item.page.unwrap_or((i + 1) as u32);\n        let title = if item.title.trim().is_empty() {\n            format!(\"P{}\", page)\n        } else {\n            item.title.trim().to_string()\n        };","sourceCodeStart":206,"sourceCodeEnd":242,"githubUrl":"https://github.com/tonhowtf/omniget/blob/8600b91f4246848bac346874daa9e61c1fc5677a/src-tauri/src/platforms/bilibili/danmaku/export.rs#L206-L242","documentation":"friendly() maps BilibiliError's not-found variant to this message: the API answered for the requested part/cid but returned zero danmaku in a way that indicates the part's comment track is gone — deleted by the uploader or removed by moderation — rather than merely empty.","triggerScenarios":"Thrown at src-tauri/src/platforms/bilibili/danmaku/export.rs:224 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Try another part of the same video that may still have comments","Verify on the Bilibili website whether the part still shows danmaku","Double-check the link points to the intended part"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"8600b91f4246848bac346874daa9e61c1fc5677a","analyzedAt":"2026-09-12T14:29:19.317Z","contentChangedAt":"2026-09-12T14:29:19.317Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}