DIYgod/RSSHub · warning · InvalidParameterError

这个人还没有图文或动态。

Error message

这个人还没有图文或动态。

What it means

After successfully fetching and parsing the user's feed list from coolapk, all parsed items were filtered out. utils.parseDynamic returned falsy for every item, meaning the user's dynamics are all of unsupported types. This differs from error 168 in that the API returned data, but none of it could be converted to feed items.

Source

Thrown at lib/routes/coolapk/user-dynamic.ts:54

        headers: utils.getHeaders(),
    });
    const data = response.data.data;
    if (!data) {
        throw new InvalidParameterError('这个人没有任何动态。');
    }
    let out = await Promise.all(
        data.map((item) => {
            if (!username) {
                username = item.username;
            }

            return utils.parseDynamic(item);
        })
    );

    out = out.filter(Boolean); // 去除空值
    if (out.length === 0) {
        throw new InvalidParameterError('这个人还没有图文或动态。');
    }
    return {
        title: `酷安个人动态-${username}`,
        link: `https://www.coolapk.com/u/${uid}`,
        description: `酷安个人动态-${username}`,
        item: out,
    };
}

View on GitHub (pinned to bed535e087)

Solutions

  1. Log the raw items to inspect their entityType or infoList fields.
  2. Check utils.parseDynamic to see which types are handled and update if needed.
  3. Verify by visiting the user's profile on coolapk to see what types of content they post.
  4. If the user genuinely has only unsupported types, this error is correct behavior.
Defensive patterns

Strategy: validation

Validate before calling

// After parsing, log what types were present
if (out.length === 0) {
    const types = data.map((item: any) => item.entityType || item.infoList?.[0]?.entityType).filter(Boolean);
    logger.warn(`All ${data.length} items filtered out. Types present: ${[...new Set(types)].join(', ')}`);
}

Prevention

When it happens

Trigger: response.data.data is a non-empty array, but every item passed to utils.parseDynamic returns undefined/null. The user may have only posted content types that parseDynamic does not handle, or the parseDynamic function's type detection logic is outdated.

Common situations: The user exclusively posts content types not covered by parseDynamic (e.g., only reposts, only polls, only short videos); coolapk added a new dynamic type that parseDynamic doesn't recognize; the user's feed contains only promoted/ad content.

Related errors


AI-assisted analysis of DIYgod/RSSHub@bed535e087 (2026-08-12). Data as JSON: /api/errors/141072eef72c4f67. Report an issue: GitHub.