0

我有一组通过 Facebook Business Python SDK 检索的广告素材。当有人点击广告时,我特别需要这些来检索出站 URL AdCreative['object_story_spec']['video_data']['call_to_action']['value']['link']:.

我使用以下调用:

adcreatives = set.get_ad_creatives(fields=[
                                    AdCreative.Field.id,
                                    AdCreative.Field.name,
                                    AdCreative.Field.object_story_spec,
                                    AdCreative.Field.effective_object_story_id ,
                                ])

其中 set 是广告集。

在某些情况下,结果如下所示(删除了实际数据),这是预期的:

<AdCreative> {
    "body": "[<BODY>]",
    "effective_object_story_id": "[<EFFECTIVE_OBJECT_STORY_ID>]",
    "id": "[<ID>]",
    "name": "[<NAME>]",
    "object_story_spec": {
        "instagram_actor_id": "[<INSTAGRAM_ACTOR_ID>]",
        "page_id": "[<PAGE_ID>]",
        "video_data": {
            "call_to_action": {
                "type": "[<TYPE>]",
                "value": {
                    "link": "[<LINK>]",   <== This is what I need
                    "link_format": "[<LINK_FORMAT>]"
                }
            },
            "image_hash": "[<IMAGE_HASH>]",
            "image_url": "[<IMAGE_URL>]",
            "message": "[<MESSAGE>]",
            "video_id": "[<VIDEO_ID>]"
        }
    }
}

虽然有时结果如下所示:

<AdCreative> {
    "effective_object_story_id": "[<EFFECTIVE_OBJECT_STORY_ID>]",
    "id": "[<ID>]",
    "name": "[<NAME>]",
    "object_story_spec": {
        "instagram_actor_id": "[<INSTAGRAM_ACTOR_ID>]",
        "page_id": "[<PAGE_ID>]"
    }
}

根据这个较早的问题:Can't get AdCreative ObjectStorySpec这是因为如果 object_story_spec 链接到广告素材,而不是与广告素材一起创建,则不会填充它。

但是,应该将 video_data(以及链接)保存在某个地方。有没有办法找回这个?也许通过 Effective_object_story_id?object_story_spec ( https://developers.facebook.com/docs/marketing-api/reference/ad-creative-object-story-spec/v12.0 ) 的文档页面没有我要查找的信息。

4

0 回答 0