tonhowtf/omniget · error
conteúdo pago: conecte uma conta do Bilibili que já tenha a…
Error message
conteúdo pago: conecte uma conta do Bilibili que já tenha a compra
What it means
friendly() maps BilibiliError::PremiumRequired to this message when NO account is connected (with_account=false): the requested danmaku belongs to paid 'cheese' content and the anonymous client categorically cannot access it, so an account with the purchase is required.
Solutions
- Log into a Bilibili account that already owns the content via the cookie manager
- Verify the purchase on the Bilibili website with that account first
- Choose free content if no purchased account is available
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at src-tauri/src/platforms/bilibili/danmaku/export.rs:214 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tonhowtf/omniget@8600b91f42 (2026-09-12).
Data as JSON: /api/errors/bca8d683ef8a903e.
Report an issue: GitHub.
Appendix: source
Thrown at src-tauri/src/platforms/bilibili/danmaku/export.rs:214
fn build_client(slug: Option<&str>) -> Result<ApiClient> {
let client = ApiClient::new().map_err(|e| anyhow!("{}", e.i18n_key()))?;
Ok(match slug {
Some(s) => client.with_account(s),
None => client.with_anonymous_cookies(),
})
}
/// Erro de API virando frase. Tudo que depende de sessão degrada com o mesmo
/// recado — é o caso do conteúdo pago (`cheese`) e do bangumi regional.
fn friendly(e: BilibiliError, with_account: bool) -> anyhow::Error {
match e {
BilibiliError::NotLoggedIn | BilibiliError::CookieMissing => anyhow!(
"esse conteúdo pede a sessão do Bilibili — entre na conta pelo gerenciador de cookies e tente de novo"
),
BilibiliError::PremiumRequired if with_account => anyhow!(
"a conta conectada não tem acesso a esse conteúdo pago"
),
BilibiliError::PremiumRequired => anyhow!(
"conteúdo pago: conecte uma conta do Bilibili que já tenha a compra"
),
BilibiliError::GeoBlocked => {
anyhow!("o Bilibili bloqueia esse conteúdo na sua região; tente com proxy")
}
BilibiliError::RateLimited => {
anyhow!("o Bilibili está limitando as requisições; espere um pouco e repita")
}
BilibiliError::ContentUnavailable => {
anyhow!("não achei comentários nessa parte — ela pode ter sido removida")
}
other => anyhow!("{}", other.i18n_key()),
}
}
fn collect_parts(parsed: &parser::ParsedContent) -> Vec<DanmakuPart> {
let mut out = Vec::new();
for (i, item) in parsed.items.iter().enumerate() {View on GitHub (pinned to 8600b91f42)