tonhowtf/omniget · error
esse link não tem parte de vídeo com comentários — abra uma…
Error message
esse link não tem parte de vídeo com comentários — abra uma parte específica
What it means
A validation guard in the danmaku export flow: after resolving the b23 short link and parsing the page, collect_parts found no video part that carries comments. The URL points at a multi-part entry or playlist landing page rather than a concrete video part, so there is no cid to fetch danmaku for.
Solutions
- Open a specific part/page of the video (e.g. ?p=2 or the part URL) instead of the series landing link
- Copy the link directly from the player page of the part you want
- Check that the link really points at a normal video (not an article or live room)
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src-tauri/src/platforms/bilibili/danmaku/export.rs:114 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/b9f16e5f45c6dc22.
Report an issue: GitHub.
Appendix: source
Thrown at src-tauri/src/platforms/bilibili/danmaku/export.rs:114
Some(4),
Some("resolvendo o link".into()),
);
let mut effective = url.to_string();
if url_kind::is_b23_short(&effective) {
match url_kind::resolve_b23(&client, &effective).await {
Ok(full) => effective = full,
Err(e) => return Err(friendly(e, with_account)),
}
}
let kind = url_kind::detect(&effective)
.map_err(|_| anyhow!("não reconheci um vídeo do Bilibili em: {}", url))?;
let parsed = parser::parse(&client, &kind)
.await
.map_err(|e| friendly(e, with_account))?;
let parts = collect_parts(&parsed);
if parts.is_empty() {
return Err(anyhow!(
"esse link não tem parte de vídeo com comentários — abra uma parte específica"
));
}
let wanted = if opts.page > 0 {
opts.page
} else {
page_from_kind(&kind)
};
let part = pick_part(&parts, wanted).ok_or_else(|| {
anyhow!(
"a parte {} não existe; esse vídeo tem {}",
wanted,
describe_pages(&parts)
)
})?;
let duration = if part.duration_secs > 0 {
part.duration_secsView on GitHub (pinned to 8600b91f42)