xpzouying/xiaohongshu-mcp · error
查找上传输入框失败(第%d张)
Error message
查找上传输入框失败(第%d张)
What it means
uploadImages 逐张上传循环中 findImageUploadInput 失败(第一张与非首张走不同查找逻辑):上传输入框未渲染或选择器失效,Wrapf 标明是第几张图片的输入框找不到。
Source
Thrown at xiaohongshu/publish.go:254
return result.Value.Bool(), nil
}
func uploadImages(page *rod.Page, imagesPaths []string) error {
validPaths := make([]string, 0, len(imagesPaths))
for _, path := range imagesPaths {
if _, err := os.Stat(path); os.IsNotExist(err) {
logrus.Warnf("图片文件不存在: %s", path)
continue
}
validPaths = append(validPaths, path)
logrus.Infof("获取有效图片:%s", path)
}
// 逐张上传:每张上传后等待预览出现,再上传下一张
for i, path := range validPaths {
uploadInput, err := findImageUploadInput(page, i == 0)
if err != nil {
return errors.Wrapf(err, "查找上传输入框失败(第%d张)", i+1)
}
if err := uploadInput.SetFiles([]string{path}); err != nil {
return errors.Wrapf(err, "上传第%d张图片失败", i+1)
}
slog.Info("图片已提交上传", "index", i+1, "path", path)
// 等待当前图片上传完成(预览元素数量达到 i+1),最多等 60 秒
if err := waitForUploadComplete(page, i+1); err != nil {
return errors.Wrapf(err, "第%d张图片上传超时", i+1)
}
time.Sleep(1 * time.Second)
}
return nil
}
// findImageUploadInput 查找图片上传的输入框View on GitHub (pinned to 332d196854)
Solutions
- 重试上传流程
- 检查发布页是否加载完整
- 更新 findImageUploadInput 的选择器
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at xiaohongshu/publish.go:254 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of xpzouying/xiaohongshu-mcp@332d196854 (2026-09-05).
Data as JSON: /api/errors/7f235b7ad0bb47f5.
Report an issue: GitHub.