You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Instagrapi上传Instagram故事时标题不显示且报ValidationError

问题解决

问题分析

  1. 故事不显示文本:photo_upload_to_story方法的caption参数适用于Feed帖子,Instagram故事的文本内容需要通过text参数传递。
  2. ValidationError报错:这是Instagrapi与新版pydantic(2.x)的类型兼容问题——内部将整数类型的媒体PK传入了要求字符串类型的字段,触发pydantic校验失败。

解决方案

方法一:修正参数+降级Instagrapi(推荐)

  • 替换参数:将代码中的caption改为text,这是设置故事文本的正确参数。
  • 执行命令降级Instagrapi到兼容版本:
    pip install instagrapi==1.17.0
    
  • 修改后的完整代码:
    from instagrapi import Client
    cl = Client()
    cl.login('MY USER', 'MY PASSWORD')
    cl.photo_upload_to_story("Images/image1.jpg", text="life is beautiful")
    cl.logout()
    

方法二:适配新版pydantic的临时修复

若不想降级依赖,可手动将媒体PK转为字符串,使用底层方法上传:

from instagrapi import Client
from instagrapi.types import StoryMedia

cl = Client()
cl.login('MY USER', 'MY PASSWORD')

# 先上传图片获取媒体对象
media = cl.photo_upload("Images/image1.jpg")
# 强制将PK转为字符串,避免类型校验错误,同时设置故事文本
story_media = StoryMedia(media_pk=str(media.pk), text="life is beautiful")
# 上传故事
cl.upload_story(story_media)

cl.logout()

内容的提问来源于stack exchange,提问作者Juan R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 01:50:09