Web Tidy
博客

Instagram Follower Export 字段为空:Null 不等于 No

用 14 列诊断树、字段覆盖率和任务终态,区分 Instagram follower CSV/XLSX 的 unknown、false、partial 与 missing rows。

2026年8月31日Instagram
本文目录

空白单元格表示当前 Followers 或 Following 响应没有返回该值。它不等于 No,也不单独证明导出失败。先判断字段类别,再看空白发生在一行还是整列,最后记录 confirmed rows 和任务终态。不要为了“填满”可选字段而重跑,也不要用另一列、另一个账号或 AI 猜值。

在 SKU32 中,三个布尔字段必须保留 Yes / No / blankcollectedAt 是本地归一化时间,不是准确 follow time。partial 描述任务如何结束;blank 描述一个值是否有证据。

披露: Web Tidy 发布本指南,并开发 INS Follower Exporter。14 列和任务状态事实来自当前本地 1.0.5 runtime/writer。两个同意图 TopN 与一个不同 URL 的 step-by-step 原页已于 2026 年 8 月 31 日打开并读完;它们没有定义 SKU32 的精确三态 writer 与恢复树。

先冻结 14 列合同

字段类字段当前 writer 规则空白时允许的结论
身份id, username字符串;id 是默认去重键confirmed row 中异常;检查原文件/转换链
平台可选身份pk仅来源返回时保留,不从 id 合成unknown/not returned
主页显示profileUrl, fullName, profilePicUrl可选字符串关系节点未返回;不证明无姓名/头像或已删除
三态标志isVerified, followedByViewer, requestedByViewertrue→Yes,false→No,undefined→blankunknown/not returned;不自动等于 No
导出上下文audience, sourceProfile, sourceProfileUrlFollowers/Following 方向与目标来源检查 untouched SKU32 产物和二次转换
溯源collectedAt, rowIndex本地归一化时间与最终本地顺序不得补成 follow time 或 Instagram rank

CSV 与原生 XLSX 使用相同列顺序。SKU32 不输出 email、phone、bio、follower count 或 JSON;schema 中不存在的列不是“空字段”。

七节点纯文本诊断树

N1 这列是否属于固定 14 列?
├─ 否 → 可能是二次加工列或其它产品 schema。
│       动作:回到 untouched SKU32 CSV/XLSX;不要把不存在的列报成 blank。
└─ 是 → N2
 
N2 id 或 username 是否为空?
├─ 是 → confirmed row 的身份完整性异常。
│       动作:保留原文件,检查导入/转换;不从 fullName、pk、rowIndex 补值。
└─ 否 → N3
 
N3 是否为 pk/profileUrl/fullName/profilePicUrl?
├─ 单行 blank → 当前关系节点未返回该可选值;保留 blank,用 id + username 匹配。
├─ 整列 blank → 确认 untouched 产物与同一 run;报告 column coverage=0%。
└─ 否 → N4
 
N4 是否为 isVerified/followedByViewer/requestedByViewer?
├─ 是 → 保留 Yes / No / blank。
│       单行或整列 blank 都是 unknown/not returned;不转成 No。
└─ 否 → N5
 
N5 是否为 audience/sourceProfile/sourceProfileUrl?
├─ audience/sourceProfile blank → 来源上下文不足。
│   动作:核对 target 与 Followers/Following;修复前不合并文件。
├─ 仅 sourceProfileUrl blank → sourceProfile 仍可标识 handle;URL 保持 unknown。
└─ 否 → N6
 
N6 是否为 collectedAt/rowIndex?
├─ 是 → 检查原始 writer 产物。
│       禁止推断:collectedAt=follow time;rowIndex=Instagram rank。
└─ 否 → N7
 
N7 核对 task state 与分布
├─ completed + confirmed rows → 按上面字段规则处理 blank。
├─ partial + confirmed rows → 使用 confirmed rows,另记 partial 原因,不称完整。
├─ failed/attention + 无可导出 confirmed rows → 先解决访问/来源状态,再做字段统计。
└─ 主页显示人数 > confirmed rows → 这是 coverage/missing-row 问题,不是 blank-cell 问题。

这棵树覆盖 pkprofileUrl、三个布尔字段、sourceProfileUrlcollectedAt,并将单行空白、整列空白、partial 与 missing rows 分开。

每列单独计算覆盖率

nonblank_coverage(f) = nonblank confirmed rows for f / confirmed rows × 100%
identity_usable = rows with nonblank id AND username / confirmed rows × 100%

confirmed rows = 0,覆盖率写 N/A,不要写 0% 或 100%。不能把可选列平均成一个“文件完整率”,因为 identity、profile display、flag、context 与 provenance 回答不同问题。

例:一个 completed Followers 文件有 900 confirmed rows,id+username 完整 900 行、profilePicUrl 非空 760 行、isVerified 有 Yes/No 的 810 行:

identity_usable = 900 / 900 = 100%
nonblank_coverage(profilePicUrl) = 760 / 900 = 84.4%
known_coverage(isVerified) = 810 / 900 = 90.0%
blank isVerified = 90 / 900 = 10.0% unknown, not No
terminal_state = completed

这不证明 900 行是主页全量,也不证明 90 个账号未验证,只描述这份有界文件中的字段证据。

不同症状对应不同动作

症状先检查可继续使用停止线
单行可选 profile blank同行 id,username、untouched 文件身份匹配与已返回字段不访问主页“补齐”
整列可选字段 blankuntouched SKU32 产物和同一 run报 0% column coverage不声称所有账号都没有该属性
三态 flag blank原始 writer 与二次导入Yes/No/blank 分组不把 blank 转成 No
context/provenance blanktarget、audience、sourceProfile、终态有足够来源的 confirmed rows来源无法恢复时不合并/归因
partial 文件confirmed、partial 原因、selected ceilingconfirmed rows 与逐列 coverage不称完整;重跑不是默认修复
行数少于显示人数audience、ceiling、confirmed、dedupe、state当前 confirmed snapshot转到 coverage 诊断,不填字段

六步验证

  1. 保留 untouched CSV/XLSX,清洗副本。
  2. 记录 target、Followers/Following、selected ceiling(100/200/500/1,000)、confirmed rows 与最终状态。
  3. 验证恰好 14 列及其顺序;二次转换删列单独处理。
  4. 计算 identity usable 和每个可选字段的 nonblank coverage。
  5. 保留 Yes/No/blank,以及 collectedAtrowIndex 的原始含义。
  6. 只有 identity/context 不可用或原产物损坏时才考虑新 run;可选 blank 本身不是重跑理由。

限制与禁止推断

  • Blank 不证明 No、未验证、无头像、私密、删除或失败。
  • partial 不表示所有字段空;completed 不保证可选字段非空。
  • confirmed rows、selected ceiling 与主页显示人数不能互换。
  • Followers 与 Following 文件不能当作同一方向。
  • collectedAt 不是 follow/unfollow time;rowIndex 不是平台排名。
  • SKU32 只能选择 100/200/500/1,000 行,不承诺全量、无限行或后台监控。
  • 本页不绕过 private、login、challenge、rate limit 或 unavailable 状态。
  • 空值不授权联系方式丰富化、CRM 同步或外联。

有条件的下一步

如果当前会话可访问目标、Followers/Following、100/200/500/1,000 ceiling、固定 14 列 CSV/XLSX、confirmed rows 与 partial 边界符合需求,可以查看 Instagram Follower Exporter。若需要丰富化、JSON/API、无限行或监控,它不是正确路径。

常见问题

Blank isVerified 是否表示没有蓝勾?

不是。Blank 是 unknown/not returned;只有明确 No 才是 false。

可以把 id 复制到 blank pk 吗?

不可以。id 可用于比对,但 pk 只在来源返回时保留。

整列 profilePicUrl 为空,能否证明所有账号都没有头像?

不能。只能报告该文件中 nonblank coverage 为 0%,然后核对 untouched 产物。

可选 blank 会让任务变成 partial 吗?

不会自动导致。Blank 是字段证据;partial 是有 confirmed rows 的任务终止状态。

什么时候应该重跑?

原产物损坏或身份/来源上下文不可用,并且访问允许时。可选 blank 本身不是理由。

900 行中 760 个头像 URL 应如何报告?

写“900 confirmed identity rows;profilePicUrl nonblank coverage 84.4%”,不要写“文件 84.4% 完整”。

collectedAt 能说明何时关注吗?

不能。它是本地归一化时间,不是历史 follow time。