1

インスタグラム広告をクロールする Web サービスを構築中です。不可解な API のドキュメントにある REST 要求を介して機能の方法をマッピングし、認証が大量に行われ、古い命名規則と新しい命名規則 (たとえば、広告グループと広告) が混在した後、最終的に 1 つの非常に重要な呼び出しにたどり着きました。挙動がおかしい。私は説明する:

まず、議論のために、次の呼び出しを行いました。

https://graph.facebook.com/v2.6/<adcreative_id>?fields=comment_count,like_count&access_token=<my_token>

それは美しく機能し、次のような結果が得られます。

{
  "comment_count": 4,
  "like_count": 175,
  "id": "<adcreative's_id>"
}

広告クリエイティブのコメントに到達すると、決定論的に次の 2 つのうちのいずれかが発生します。次の呼び出しを送信するとします。

https://graph.facebook.com/v2.6/ /comments?fields=message,created_at,comment_type,instagram_user&access_token=

(1) 投稿にキャプション (API はコメントとしても認識されます) しかない場合、次のような完全に適切な返信が送信されます。

{
  "data": [
    {
      "message": "here goes the actual ad's caption, as written by the advertiser",
      "created_at": "2016-04-22T18:36:01+0000",
      "instagram_user": {
        "id": "0123456789"
      },
      "comment_type": "CAPTION",
      "id": "<actual_comment_id>"
    }
  ]
}

(2)投稿に実際のコメント(コメントを数えないゼロより大きい任意の数CAPTION)がある場合、私は常に空の応答を受け取ります:

{
  "data": [
  ]
}

認証時にユーザーに付与するように求めるアクセス許可を再確認しましたが、現在ads_managementは 、ads_readpage_managementおよびread_insightsです。AdAccountまた、Ads API の使用を関係者に許可していることも確認しました。最後に、ログインしている im が、読み込もうとしUser Accountている広告主の権利を持っていることも確認しました。AdAccount

4

1 に答える 1