{"record":{"id":"19a553e5a8035e9e","repo":"tonhowtf/omniget","slug":"o-bilibili-bloqueia-esse-conte-do-na-sua-regi-o-tente-com","errorCode":null,"errorMessage":"o Bilibili bloqueia esse conteúdo na sua região; tente com proxy","messagePattern":"o Bilibili bloqueia esse conteúdo na sua região; tente com proxy","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src-tauri/src/platforms/bilibili/danmaku/export.rs","lineNumber":218,"sourceCode":"        None => client.with_anonymous_cookies(),\n    })\n}\n\n/// Erro de API virando frase. Tudo que depende de sessão degrada com o mesmo\n/// recado — é o caso do conteúdo pago (`cheese`) e do bangumi regional.\nfn 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        };","sourceCodeStart":200,"sourceCodeEnd":236,"githubUrl":"https://github.com/tonhowtf/omniget/blob/8600b91f4246848bac346874daa9e61c1fc5677a/src-tauri/src/platforms/bilibili/danmaku/export.rs#L200-L236","documentation":"friendly() maps BilibiliError's regional-block variant to this message: the Bilibili API refused the request because the content is geo-restricted for the current network location (typical for regional bangumi). Authentication would not help; the IP's region is the problem.","triggerScenarios":"Thrown at src-tauri/src/platforms/bilibili/danmaku/export.rs:218 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Route the request through a proxy in a region where the content is available","Check whether the content is region-free on the Bilibili website","Try a different network if a proxy is not configured"],"exampleFix":null,"handlingStrategy":"retry","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"}