tonhowtf/omniget · error
nenhum favorito foi lido: esses perfis costumam exigir a…
Error message
nenhum favorito foi lido: esses perfis costumam exigir a sessão do site
What it means
After fetching the likes dumps for each platform, the favorites tool converts them into rows. If zero rows were read from any platform, it concludes the profiles likely require an authenticated session and aborts with this explanatory message.
Solutions
- Provide a fresh session_netscape cookie file exported from a logged-in Tumblr browser session
- Re-export cookies if the session expired
- Verify the target profile allows its likes to be seen (public likes list enabled)
- Log the raw dump per platform to confirm the fetch succeeded but contained no likes
Example fix
// before
let opts = Options { session_netscape: None, .. }; // anonymous, likes hidden
// after
let opts = Options { session_netscape: Some("cookies.txt".into()), .. }; // logged-in session Defensive patterns
Strategy: try-catch
Validate before calling
// require a session cookie file for private likes
if opts.session_netscape.is_none() {
return Err(anyhow!("likes privados exigem session_netscape"));
} Try / catch
match art::run(opts).await {
Err(e) if e.to_string().contains("nenhum favorito foi lido") => {
eprintln!("exporte cookies de sessão do Tumblr e verifique se os likes são públicos");
}
Err(e) => return Err(e),
Ok(r) => use(r),
} Prevention
- Always run with fresh logged-in session cookies for likes scraping
- Re-export cookies regularly before they expire
- Confirm target profiles have public likes enabled
When it happens
Trigger: Calling favorites `run` without a Netscape session cookie file (session_netscape) while the target Tumblr profiles keep their likes private, or the session is expired/invalid so the dump contains no liked posts.
Common situations: Anonymous scraping of private likes; expired Tumblr session cookies; cookies exported from a different account; the profile has the public likes list disabled.
Related errors
- nenhum post foi lido desse blog
- nenhum like foi lido: os likes só aparecem com a sessão do…
- o X serviu a versao deslogada da pagina
- não achei o token anti-CSRF do Goodreads; recapture os…
- nao encontrei slides nessa pagina (o SlideShare pode ter…
AI-assisted analysis of tonhowtf/omniget@8600b91f42 (2026-09-12).
Data as JSON: /api/errors/e41839d6325e4a57.
Report an issue: GitHub.
Appendix: source
Thrown at src-tauri/omniget-core/src/core/tools/tumblr/art.rs:421
let mut rows: Vec<FavRow> = Vec::new();
let mut by_platform: Vec<(String, u64)> = Vec::new();
for (platform, url) in &sources {
super::super::report(progress, TOOL_ID, "started", 0, None, Some(url.clone()));
let entries = gdl::dump(
url,
cookie_path.as_deref(),
opts.limit,
&[],
progress,
TOOL_ID,
)
.await?;
let found = rows_from_dump(platform, &entries);
by_platform.push((platform.to_string(), found.len() as u64));
rows.extend(found);
}
if rows.is_empty() {
anyhow::bail!("nenhum favorito foi lido: esses perfis costumam exigir a sessão do site");
}
let mut dupes = 0u64;
let mut checked = 0u64;
if let Some(dir) = opts.local_dir.as_deref().filter(|d| !d.trim().is_empty()) {
let want_hash = opts.check_dupes;
let path = PathBuf::from(dir);
let p2 = progress.clone();
let local = tokio::task::spawn_blocking(move || scan_local(&path, want_hash, &p2)).await?;
if !local.is_empty() {
dupes = match_by_name(&mut rows, &local);
if want_hash && !local.hashes.is_empty() {
let client = super::super::client()?;
let total = rows.len().min(opts.max_check as usize) as u64;
for (i, row) in rows.iter_mut().enumerate() {
if i as u64 >= opts.max_check {
break;
}View on GitHub (pinned to 8600b91f42)