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

  1. Log into a Bilibili account that already owns the content via the cookie manager
  2. Verify the purchase on the Bilibili website with that account first
  3. 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)