甚至可以通过API(图表或FQL)检索Facebook广告上的评论吗?如果是,我是否需要列入白名单的应用程序?另外,如果我有页面访问令牌,是否足够,或者我需要具有ads_management权限的用户访问令牌?
答案 0 :(得分:1)
关于令牌使用,给定用户将page_token
扩展到给定的应用程序。 page_token最多具有与其授权页面和ad_accounts上的用户相同的权限。
如果您已拥有user_token
manage_pages
权限,则可以代表用户自动生成page_token。同样,此page_token
最多具有与您用于生成它的user_token
相同的权限。
换句话说,拥有page_token
并不等于user_token
中已存在的任何其他权限。
话虽如此,你需要
如果未达到第二个要求,例如ad_account
act_123456789
,您将收到错误消息:
{
"error": {
"message": "(#274) The ad account is not enabled for usage in Ads API. Please add it in developers.facebook.com/apps -> select your app -> settings -> advanced -> advertising accounts -> Ads API. Account 123456789 not enabled for this application.",
"type": "OAuthException",
"code": 274,
"fbtrace_id": "xxxxx"
}
}
例如,您可以尝试生成具有Graph API Explorer App所有权限的令牌。它会抛出上述错误,因为所述应用程序没有启用ad_account act_123456789
。
因此,如果您为已列出此ad_account的应用扩展了ads_read
令牌,并且您知道ad_id
,则可以按我在帖子Get comments from facebook ads (marketing)中解释的那样进行处理/ p>
基本上,您使用ad_id(例如123000000
)来获取提升的帖子ID及其操作
/123000000?fields=creative.fields(effective_object_story_id),insights.fields(动作)
答案将包含effective_object_story_id
(例如,假设它是456000000_789000000
),其操作按类型细分:
{
"creative": {
"effective_object_story_id": "456000000_789000000",
"id": "123000000"
},
"insights": {
"data": [
{
"actions": [
{
"action_type": "comment",
"value": "12"
},
{
"action_type": "like",
"value": "2"
},
{
"action_type": "post",
"value": "3"
},
{
"action_type": "post_reaction",
"value": "29"
},
{
"action_type": "video_view",
"value": "558"
},
{
"action_type": "page_engagement",
"value": "604"
},
{
"action_type": "post_engagement",
"value": "602"
}
],
"date_start": "2017-08-14",
"date_stop": "2017-08-20"
}
],
"paging": {
"cursors": {
"before": "xxx",
"after": "xxx"
}
}
}
}
如果您还要将付费评论与常规评论区分开来,可以查询post_id comments
的{{1}}边缘,以获得应该大于广告生成的评论的整体评论数量
答案 1 :(得分:0)
您无法通过 API 提取评论的实际文字 - 会使其太容易抓取。
答案 2 :(得分:-1)
是的,拥有评论的Facebook广告是因为广告是宣传的网页帖子,无论该网页帖子是否隐藏。网页发布评论可通过Facebook API获得,无需访问Ads API。使用图形API端点/v2.1/{page-id}/comments来检索页面发布评论。有关详细信息,请参阅Facebook Graph API documentation on object comments。